「リーダブルコード」感想
エンジニア必読書と言われている「リータブルコード」を読みました。 社会人2年目の時に一度読みましたが、当時はコーディングする機会少なく、ほぼ内容を忘れてしまっていました。 社会人4年目に突入し、コーディングする機会も少し増えてきて、綺麗でわかりやすいコードを書きたいと思いがでてきたので改めて読んでみました。
読んでいた中で、特に意識していこうと思ったことを殴り書きします。
第一部 表面上の課題
- 変数に情報を詰め込む
- コードの見やすさを意識する。 縦列を揃える / ヘルパーメソッドを作成する / コードを段落に分割する等。
- コメントは、読み手の立場になって「考えを記録する」。 補助的なコメントは不要。
第二部 ループとロジックの単純化
- if分の条件は、調査対象を左辺にし、なるべく肯定文を使う。
- ループ文では、なるべく早く関数から返す
- ネストは浅くすることを意識する
- 説明変数・要約変数を使って巨大な式を分割する。
- 変数のスコープが広いと、どこで使われているかわからず常に意識しないといけないので、なるべくスコープを縮める。
第三部 コードの再編成
- 小さな下位問題は抽出して別の関数にする → 汎用的に使える / 修正・テストがしやすくなる などの恩恵。
- タスクをなるべく小さくして、1度に1つのタスクをするようにする。
- 「最も読みやすいコードは、何も書かれていないコード」
まとめ
これまでの業務でのコーディングは、現場のコードを見て、なんとなく形を似せて自分の考えを反映させずにコーディングしていました。 そのため、後から見返しても「なんでこう書いたんだっけ?」みたいなことが多々ある状況でした。他の人が読んだら尚更わからないですね。
これからは、コードを書く上で大切な原則「コードは理解しやすくならなければいけない」というのは、常に意識してコーディングしていきたいと思いました。