読みやすく変更に強いコードを書きたい人に向けて、役立つ9冊をまとめた。いずれもこのブログで個別にレビューした本であり、各項目からレビュー記事へ移動できる。読みやすさの基礎から、リファクタリングによる改善、複雑さとの向き合い方へと、学習の道筋に沿って並べた。
なぜ良いコードを学ぶのか
コードは書く時間より読まれる時間のほうが長い。読みやすさや変更のしやすさを意識すれば、チーム全体の速度と品質が上がる。原則を体系的に学べば、感覚に頼らず根拠を持って設計できる。
1. まず読むべき定番
リーダブルコード
命名やコメントなど、読みやすさの基本を短くまとめた定番の一冊である。すぐに実践できる具体的な指針が手に入る。詳細はレビューにまとめた。
Good Code, Bad Code
良いコードの条件を、具体例の比較を通して整理した一冊である。何が良し悪しを分けるのかを言語化できる。内容はレビューで紹介した。
2. リファクタリングで改善する
レガシーコード改善ガイド
テストのない既存コードを、安全に変えていく技法を扱う古典である。手強いコードに立ち向かう武器が増える。感想はレビューに書いた。
Tidy First
小さな整頓を積み重ねて設計を良くする、経験主義的な考え方を示す一冊である。大きな作り替えの前にできる一歩がわかる。詳しくはレビューで取り上げた。
クリーンコードクックブック
コードの品質を改善する具体策を、レシピ集の形でまとめた一冊である。目の前のコードにすぐ当てはめられる。詳細はレビューにまとめた。
3. 複雑さと向き合う
脳に収まるコードの書き方
人の認知の限界を前提に、複雑さを抑える経験則を扱う一冊である。持続可能なコードの基準が持てる。内容はレビューで紹介した。
プログラマー脳
コードを読み書きするときの脳の働きを、認知科学から解き明かす一冊である。学び方や理解の仕方そのものを見直せる。感想はレビューに書いた。
4. 視野を広げる
ストリートコーダー
現場で通用する実利的なコーディングの姿勢を、率直に語る一冊である。原則論だけでない現実的な判断が学べる。詳しくはレビューで取り上げた。
なっとく 関数型プログラミング
関数型の考え方を、図解を交えてやさしく解説する入門書である。副作用を抑える設計の引き出しが増える。詳細はレビューにまとめた。
まとめ
まずは定番2冊で読みやすさの基準を持ち、次にリファクタリングの本で既存コードを改善するとよい。複雑さや関数型のテーマは、必要になった段階で深めるのが効率的である。各書の個別レビューも用意したので、気になった本から読み進めるとよい。