以前Clean Codeを読んだので、対比のためにA Philosophy of Software Designを読み直した。前回は流し読みしてしまったので今回は読書メモを作成。洋書だと読むのが大変なので最初から読書メモを作っておけばよかったと反省。相変わらず読書メモが長くなりすぎてコピペのようになってしまったので割愛。
内容としては「そうかな?」と思う部分も多少はあるものの、全体的に非常に納得感がある。
下記の点は常に気をつけたい。用語だけ抜粋
- 複雑性の要因
- 変更拡大
- 認知的負荷
- 不明な不明点
- 戦術的プログラミングと戦略的プログラミング
- 浅いモジュールと深いモジュール
- 情報秘匿と情報流出
- 時間的分解に注意
- 汎用用途と特殊用途
- 2回デザイン
- コメントをデザインツールとして使う
- 一貫性
- 重要なものを決める