リーダブルコード
リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)
- 作者: Dustin Boswell,Trevor Foucher,須藤功平,角征典
- 出版社/メーカー: オライリージャパン
- 発売日: 2012/06/23
- メディア: 単行本(ソフトカバー)
- 購入: 68人 クリック: 1,802回
- この商品を含むブログ (135件) を見る
第1章 理解しやすいコード
本書では「優れたソースコード」を以下のように定義している。なおここで「他人」とは「2週間後のソースコードを書いた本人」も含まれていることに注意!!
- 優れたソースコードとは他人が理解するまでかかる時間が最短であるようなコード。
第2章 名前に情報を詰め込む
具体的な単語を選ぶ
- get/size/stop等の「汎用的に利用される名前」は避けること。
- tmp/it/retvalのような汎用的な名前を用いる時は、「ループ中のイテレータや、明示的に意味のない値」などに限ること。
例:getの代わりに取得プロセスが記載されているDownloadやFetchの方が望ましい。
- getPage( )→DownloadPage( ) or FetchPage( )
- Size( )→ Height( ) or NumNodes( ) or MemoryBytes( )
- Stop( ) → Kill( ) or Resume( ) or Pause( )
- retval → sum_squares
- ServerCanStart( ) → CanListenOnPort( )
名前に属性を詰め込む
名前に単位・属性・型を入れる
例:delayだけよりも、秒単位でのという付加情報のあるdelay_secの方が望ましい。
- id→hex_id
- delay→delay_sec
- password→plaintext_password
- commnet→unescaped_comment
- html→html_utf8
- data→data_urlenc
名前の長さを決める
スコープが小さければ短い名前を、大きければ長い名前を
情報がそこなわれないなら省略する
例
- ConvertToString( )→ToString( )
- DoServerLoop( ) → ServerLoop( )