全てはオブジェクトの関連ではないだろうか

遅ればせながらDomain Driven Designが熱い、まだまだ理解が全然足りないがOOの現時点での集大成的なものを感じている。
マーチン・ファウラーのDDDについての考察
EvansClassification
InfoQのDDDについての実践的な構築方法
ドメイン駆動設計・開発の実践

上記の記事を参考に自分の脳内のDDDのイメージを図にしてみた。


※ブログ管理人の勝手なイメージです。

DDDのコアオブジェクト

  • Entitiy(一意性)
  • Value Object(不変性)
  • Service(状態無し)

これらがAggregate(集約)される

DDDでも有効なOOのパターン

  • Factory(ファクトリ)
  • Repository(リポジトリ)
  • DTO(これはDDDにないかも・・)

ポイントはやはり3つのコアオブジェクトだと思う、振る舞いをオブジェクトと捉えるところは如何にもOO的だと思うのだがどうか? 原著のDomain Driven Designが早く日本語翻訳されることを願わずにはいられない・・