はじめに
この記事は「プリンシプルオブプログラミング 3年目までに身につけたい一生役立つ101の原理原則」を読んだ際に記した議事録です。
著作権の関係により、詳細には書きません。詳しい詳細を知りたい方はぜひ本書を読んでみてください。
プリンシプルオブプログラミングをPOPと訳します。
What : 変更理由でグループ分け
変更頻度、即ち修正するタイミング同じということです。また変更理由が同じということにもなります。
時間という軸で対称性を適用させた原則とも言えます。変更のタイミングが同じものは同じ場所に配置します。
Why : 変更範囲が狭くなる
変更理由が複数あるモジュールのようなコードは壊れやすい、脆いコードです。変更理由が多いので変更機会もそれだけ多くなります。また、役割や影響範囲も広いのでコードの量も多くなります。結果、脆いコードとなります。
逆に変更理由が一つであるということは関連性の高いコードが集合していることになります。いわば堅牢なコードです。変更対象も狭く、修正しやすいコードですね。
How : 変更の理由で所属を決める
この原理はロジックにもデータにも応用できます。例えば、「一般的な計算ロジック」「年ごとに固有なロジック」があった場合、それらを分離します。変更するタイミングが違うからです。
このようにロジックやデータにも変更するタイミングを原則を用いて所属を決めていきます。
終わりに
この記事ではプリンシプルオブプログラミング 3年目までに身につけたい一生役立つ101の原理原則の議事録を自分用に記しています。
この記事ではカバーしきれていない部分も多いので、是非本書を手にとって読んでみてください。
次回、「【POP21】「良いコード」とは何か?アーキテクチャ根底技法」です。ぜひ、次の記事も読んでみてください。