Open8
DDD実践ロードマップ
ピン留めされたアイテム
DDDをプロジェクトで実践するにあたって、どういう道筋を辿ればいいのか、の指針
1. DDD の理念を PJ で共有する
DDD が成し遂げたいこと、やろうとしていることについてプロジェクトメンバーに共有する
- ドメインの中核にある複雑さと機会にフォーカスする
- ドメインエキスパートとソフトウェアエキスパートが協働してモデルを探求する
- それらのモデルを明示的に表現するソフトウェアを作成する
- 境界付けられたコンテキストの中でユビキタス言語を話す
良いモデルとは何か
良いモデルとは、問題を解決することに適した、柔軟に変更しやすいモデルを指す。
これは現実世界の事象をそのままモデル化することではなく、問題を解決することに適する概念を浮き彫りにした、目的特化型のモデルを指す。
ドメインの概念には多くの属性や関係を持つことがほとんどなため、良いモデルをモデリングすることとは、その中から問題を解決するために必要なものを取捨選択すること。
2. 戦術的設計を学ぶ
エンティティや値オブジェクトなどの戦術的設計パターンは、良いモデルを作るための基本的な構築要素
3. モデリング
ドメインエキスパートと開発者が協働して良いモデルを構築する