7章の 次の1ページを読む。DDDの「パターン」の利用例は、まだでてこないで、サンプルのモデルの説明の続き。
多対多関係 を 1対多関係 に狭める
「顧客」は複数の「貨物」と関連する。
ひとつの「貨物」は、<送り手><受け手><支払者>など複数の「顧客」と関係する。
この多対多の関係は、UML の Role の仕組みで 1対多でモデリングできる。 Role は、単に String で実装できる。振る舞いを発見したら、オブジェクトで実装する。
うーん。さらっと書いた「 Role 」の具体例だけど、これだけでも理解がたいへん。
「運送イベント」と「運送履歴」
業務システムでよくでてくる「イベント − 履歴」モデル。現在の状態は「履歴」オブジェクトに問い合わせる。
ここらへんは、常識として知っているべきなんでしょうね。
「輸送」と「場所」
2つの関連 <from> と <to> で、どこから、どこへの移動かを表すモデル。 これも常識レベルなんでしょうね。
このモデルをどうやって実装まで持っていくか。DDD パターン を使った、モデルの改良、DDD パターンをコードとして実装するやり方の具体的な説明が、この後、続くらしい。
4ページに2時間かけて、ようやく7章のほんとうの入り口にたどりついた所です。
こりゃ、長期戦だな。
多対多関係 を 1対多関係 に狭める
「顧客」は複数の「貨物」と関連する。
ひとつの「貨物」は、<送り手><受け手><支払者>など複数の「顧客」と関係する。
この多対多の関係は、UML の Role の仕組みで 1対多でモデリングできる。 Role は、単に String で実装できる。振る舞いを発見したら、オブジェクトで実装する。
うーん。さらっと書いた「 Role 」の具体例だけど、これだけでも理解がたいへん。
「運送イベント」と「運送履歴」
業務システムでよくでてくる「イベント − 履歴」モデル。現在の状態は「履歴」オブジェクトに問い合わせる。
ここらへんは、常識として知っているべきなんでしょうね。
「輸送」と「場所」
2つの関連 <from> と <to> で、どこから、どこへの移動かを表すモデル。 これも常識レベルなんでしょうね。
このモデルをどうやって実装まで持っていくか。DDD パターン を使った、モデルの改良、DDD パターンをコードとして実装するやり方の具体的な説明が、この後、続くらしい。
4ページに2時間かけて、ようやく7章のほんとうの入り口にたどりついた所です。
こりゃ、長期戦だな。