概要 †キーワード †ドメイン †問題領域、対象領域 特徴 †ドメインロジックに焦点を合わせる †
オブジェクト指向でモジュール化する †
インクリメンタルに設計する †
ドメインモデルを表現する要素 †エンティティ (参照オブジェクト) †ドメインモデル内のオブジェクトであり、その属性によってではなく、連続性と識別性によって定義される。 値オブジェクト †事物の特性を記述するオブジェクトである。特に識別する情報はなく、通例、読み出し専用のオブジェクトであり、Flyweight パターンを用いて共有できる。 サービス †操作がオブジェクトに属さない場合に、問題の自然な解決策として、操作をサービスとして実現することができる。サービスの概念は、GRASPにおいて"純粋人工物"と呼ばれるものである。 リポジトリ †ドメインオブジェクトを取得するメソッドは、記憶域の実装を簡単に切り替えられるようにするため、専門のリポジトリオブジェクトに処理を委譲するべきである。 ファクトリー †ドメインオブジェクトを生成するメソッドは、実装を簡単に切り替えられるようにするため、専門のファクトリーオブジェクトに処理を委譲するべきである。 DTO (Data Transfer Object) †DPO (Data Payload Object) †他の設計方法との比較 †モデリング †
戦略的モデリング †戦術的モデリング †ユースケース図 †
ドメインモデル図 †アーキテクチャ †オニオンアーキテクチャ †言語別 †Go †PHP †オーガニグラフ † |