ナルミヤの備忘録(仮)

ナルミヤが学んだことなどを書き記していくブログ(方向性模索中。)

リーダブルコードを読む

「リーダブルコード」を読んでまとめたもの
読むページが進んだら更新(予定)

1章 理解しやすいコード

読みやすさの基本定理

  • コードは他人が最短時間で理解できるように書かなければならない。

この定理が基本的な考えかた。詳しくいうと

  • 他人とは、数週間後の自分だったりする
  • コードが短いだけが正義ではない
  • 「このコードは理解しやすいだろうか?」というのを念頭にコードを書いたり修正したりする。

2章 名前に情報を詰め込む

情報の詰め込んだ名前のつけるpointは以下の6つ

  • 明確な単語を選ぶ
    getなどの「空虚な」言葉ではなく、ページを取ってくるならdownloadPageなどの方が良い。他にも類語辞典を使って「豊かな」単語を使う。しかし、気取った言い回しをするよりは明確で正確な名前を。
  • 汎用的な名前を避ける(あるいは使う状況を選ぶ) tmpやretvalなどの「空虚な名前」よりも、エンティティうあ値の目的を表した名前を選ぶ。 例えば、2乗の和を返す関数の戻り値なら、sum_squaresにするなど。
    こうするとバグも見つけやすくなる。

    • tmpについて 目的が情報の一時的な保管でかつ生存期間がわずか数行であるときはtmpで。「この変数には他に役割がない」という明確な意味が伝わる。
    • ループイテレータについて(for i in list のiのこと) イテレータが複数ある時には、インデックスにfor member_i in membersなどのなまえをつける。miでもいい。
  • 抽象的な名前よりも具体的な名前を使う

    • 名前は具体的なものにする。
  • 接尾辞や接頭辞を使って情報を追加する

    • 名前は短いコメントのようなもの。絶対に知らせなきゃいけない大切な情報は名前に込める。
  • 名前の長さを決める

  • 名前のフォーマットで情報を伝える