SOLID原則
https://note.com/erukiti/n/n67b323d1f7c5
この記事をベースにメモる
- S: 単一責任の法則
- 複数のアクターにまたがるコードは最小限にする
- つまり、共通部分以外のことも一つのクラスにまとめるのは良くない
- ただ、やみくもに全部分けるのも開発のしにくさに繋がる
- トレードオフ
- 判断基準としては、「変更する理由」があるならするというシンプルな基準
- O: オープン/クローズドの原則
- 何かを修正する時は、そのクラス等の責務が変化しないようにする
- 何かを追加する時は、すでに知識が露出すているものを変更するのではなく、拡張=新しい知識を作るべき
- L: リスコフの置換原則
- S が T の派生型であれば、プログラム内で T 型のオブジェクトが使われている箇所は全て S 型のオブジェクトで置換可能
- I: インターフェース分離の原則
- D: 依存関係逆転の法則
- S: 単一責任の法則