読書録:クリーンアーキテクチャ
コードを書く時、課題に感じることが幾つかある
ぱっと出てくることを挙げると...
後から分かりやすい・変更しやすいコードにしたい
- 自信あるコードにしたい
どこから書いてくか迷う
- 先の道筋を考えてコードを書こうとする
- そんなことできるのか?
- 道筋・どう分割するか、先に考えると書き進めづらい
- とりあえず書き進めたほうが早い
どのクラスにどの責務を持たせるか分からない
- 1つのクラス・メソッドに複数の役割をもたせてしまうことがある
- 正しくコードを分割できている自信がない
- ↑を防ぎたいからこそ、道筋を考えようとしてしまう
「後から分かりやすい・変更しやすいコードにしたい」というのが根本にある
コードを書く際「これはしない」「こうすべき」をまとめておくと、スムーズに実装できそう🤔
チェック形式でなくとも、頭に入れておきたい
Clean Architecture 達人に学ぶソフトウェアの構造と設計
- 作者:Robert C.Martin
- 出版社/メーカー: KADOKAWA
- 発売日: 2018/07/27
- メディア: 単行本
まずはクリーンアーキテクチャを読んで探ってみる
途中からになるけど、 SOLID原則についてまとめる
SOLID原則
About
https://ja.wikipedia.org/wiki/SOLID
ソフトウェア設計の5つの原則の接頭語
自身仕事をしていても、設計やレビューの引き合いに出てくることがある
変更に強く、理解しやすく、再利用性の高い中間ソフトウェアを設計するためのもの
中間
というのは、ソフトウェア設計を何段階かに分けたうちの中間で、この書籍では以下の段階がある
コード - モジュール - (コンポーネント) - アーキテクチャ
SOLID原則はモジュール段階の原則
Principles
これからそれぞれ書いていくよ
- SRP (Single Responsibillity Principle) 単一責任の原則
- OCP (Open-Closed Principle) 開放閉鎖原則
- LSP (Liskov Substituation Principle) リスコフの置換原則
- ISP (Interface Segregation Principle) インタフェース分離の原則
- DIP (Dependency Inversion Principle) 依存性逆転の原則
まとめ
おまけ
wikipedia によるとソフトウェア設計の原則にはGRASPというのもあって、実践UML にまとまってるらしい
実践UML 第3版 オブジェクト指向分析設計と反復型開発入門
- 作者:クレーグ・ラーマン
- 出版社/メーカー: ピアソンエデュケーション
- 発売日: 2007/11/12
- メディア: 単行本(ソフトカバー)