ドメイン駆動を読む(第2部 DDDの応用 第4章 新しいデフォルトアーキテクチャ)
勉強会用のメモを兼ねています。
新しいデフォルトアーキテクチャ…DomainModelを基礎としたもの
レイヤ分割
最初のスケッチ
- 複雑で柔軟性に富むフィルタ…QueryObjectが一つの解決策。QueryObjectを使っていることはカプセル化しておくとよい
- Repositoryを使ってカプセル化。クライアントはAPIを使いやすくなる
- Repositoryはインスタンスのライフサイクルの面倒をみる
- Repositoryメソッドに膨大な引数を取ることもできるが、「不吉な匂い」
- stringのNameという引数があったとき、使い方がわからない。
- 文字列が空のときは?その顧客を探す?名前はどうでもいい?
- stringのNameという引数があったとき、使い方がわからない。
- 双方向性はコストがかかる
- Repository経由でたどり着くことにより、片方向の関連になる
- 並行処理単位をつくるにはAggregateを使う。
- パフォーマンス問題は、例えばLazyLoadを使って解決する
- 最初からSPECIFICATIONに飛びつかなくてもよいのでは
さらに別の次元
- プレゼンテーションモデル(Presentation Model)
- ドメインモデルインスタンス(ドメインモデル全体のインスタンスセット)は ユーザごと、あるいはセッションごとに作るほうが単純
ドメイン駆動 (Programmer’s SELECTION)
- 作者: Jimmy Nilsson,尾島良司,株式会社ロングテール長尾高弘
- 出版社/メーカー: 翔泳社
- 発売日: 2008/03/20
- メディア: 大型本
- 購入: 8人 クリック: 237回
- この商品を含むブログ (33件) を見る