www.shuwasystem.co.jp
プリンシプル オブ プログラミングの読書メモです。
第3章 思想 〜プログラミングのイデオロギー〜
3.1 プログラミングセオリー
プログラミングを導く価値観
最高のコード
とは…前提として「要件を満たす」…当たり前過ぎて書いてなかったけど。
最高の
と言えるようになるためには、3つ
- 拡張方法が多くある
- 余分な要素がない
- 読みやすく理解しやすい
- 逆にしたら、触りたくないコードですね…。確かに価値と言ってよさそう…。
- 今ある道具はなぜこの形をしているか?
- ああ、いつも気にしています。
- コードも読むときに背景を一生懸命探りながらやってるような…。
3.2 プログラミングセオリーを支える3つの価値① コミュニケーション
コードはコミュニケーションの場である
- 前の章でも出てきてましたが、「コードは書くより読む時間のほうが長い」というのは、いい説明なので、ひとに頼むときに使おうと思います。
- リーダブルコードを読んでから、「読む側の視点」をめっちゃ気にしています…。
3.3 プログラミングセオリーを支える3つの価値② シンプル
コードの複雑性は排除する
- 「格闘した痕跡」…たしかに。
- テストを書きながらキレイにすることにしてて…割といい感じです。
- 余計なモノがない -> 理解しやすい …これは道理ですねw
- ミスリードが一番キツイけど、そういうのも対象ですから…。
3.3 プログラミングセオリーを支える3つの価値③ 柔軟性
コードの変更が容易である
- コードは必ず変更される…ここに書かれているもの以外に、「周囲の変化」があって…機能追加や不具合修正などがなくても、ネットワークでつながっている限り、なんらかの変更は絶対発生します…ね。(software designのなんかの記事で読みました。)
- 拡張性を上げる構造は……3個目くらいから導入を考えます…。