"「実践ドメイン駆動設計」から学ぶDDDの実装入門" 9 章感想 (全14章)
"「実践ドメイン駆動設計」から学ぶDDDの実装入門"
「実践ドメイン駆動設計」から学ぶDDDの実装入門 (CodeZine Digital First)
- 作者: 青木淳夫,山田祥寛
- 出版社/メーカー: 翔泳社
- 発売日: 2019/05/31
- メディア: オンデマンド (ペーパーバック)
- この商品を含むブログを見る
「モジュール」〜高凝集で疎結合にまとめる〜
つまり 閉鎖性共通の原則(Common Closure Principle)
.
memo
- IDDDの「モジュール」はJavaではパッケージに相当。依存関係や概念が同じものを一つのモジュールとしてまとめることで、
モジュール間は疎結合となる
。- モジュールは別のモジュールに依存しないようにするべき。
- 意味的にモジュールあいだに双方向の依存がある場合でも、
実装は単一方向の依存とするべき
。
- 意味的にモジュールあいだに双方向の依存がある場合でも、
- モジュールは別のモジュールに依存しないようにするべき。
- プロダクト名でパッケージをつけるよりは、ユビキタス言語である「境界づけられたコンテキスト」でパッケージを命名するほうが、プロダクト名の変更の影響を受けなくてすむ。
分からないこと
domain
やport
というDDDの大きな枠組み配下にクラスは存在させないようだ。これはIDDDのルールなのか?
例: jp.company.<context-A>.domain // <- domain配下にクラスは存在させない。これはIDDDのルールなのか? jp.company.<context-A>.domain.model jp.company.<context-B>.domain jp.company.<context-B>.domain.model.{value-obj,entity,domain-service,domain-event,repository,aggregates}