今更ですが、リーダブルコードをちゃんと読みました。
明確な単語を選ぶ
例えば下記の関数はどんな機能をもつだろう?
getという単語からは明確な意思が伝わらない。ページはどこから取得するのか。キャッシュ?DB?
インターネットから取得するなら、FetchPage()などが適切である。
function getPage(url) {
...
}
ブール値の変数名
頭に
- is
- has
- can
- should
などをつけてわかりやすくする事が多い
get*()の罠
数年の経験があるプログラマーなら、getで始まるメソッドを一度はどこかで見る事があると思う。
ただし、メンバの値を返すだけの機能ではなく、重厚な計算を行いその結果を返すメソッドであれば、get*()の命名はあまり適切でない。computeMean()などの名前に変更し、安易に呼び出すべきでないメソッドであることを表すべきである。
なぜコードの美しさが大切なのか
プログラミングの時間のほとんどはコードを読む時間。追いやすく流し読みできるコードは、
レビュワーの時間早出にも貢献する
空行の活用
処理のブロックは、空行を使って意味のある単位ごとに論理的な段落にわける
例)
// メールアドレスのリストを取得
...
...
// 該当のユーザを探す
...
...
// 表示ユーザの返却
...
...
早めに返してネストを削除する
ループ内部では、continueをつかう