見出し画像

読書ログ:『ドメイン駆動設計入門-7、8章』

このnoteは「ドメイン駆動設計入門」の読書記録です。


7章-柔軟性をもたらす依存関係のコントロールと8章-ソフトウェアシステムを組み立てるを読みました📚

依存の方向性を制御する

すべてのモジュールが抽象へ依存するように制御することで、ビジネスロジックを具体的な実装から解き放ち、より純粋なものに昇華する効果がある。抽象型を用いた依存関係の制御のことを「依存関係逆転の原則」という。

レベルという概念

レベルは入出力からの距離を示す。低レベルといえば機械に近い具体的な処理、高レベルといえば人間に近い抽象的な処理。主体となるべきなのは高レベルなモジュール。(主導権はクライアントにある)

コントローラーはシンプルに

コントローラーはユーザからの入力をモデルが要求するメッセージに変換し、モデルに伝えることが責務。ビジネスロジックをアプリケーションサービスに寄せるとコントローラーはシンプルなものになる。

オブジェクトの責務を明確に

ユーザーインターフェースをソフトウェアの核心から分離すると、アプリケーションの単独実行ができるようになり、ユニットテストができることで品質向上に繋がる。またリファクタリングもしやすくなる。

いいなと思ったら応援しよう!