2

ドメイン駆動設計の集約ルートについて、いくつかの(うまくいけば)簡単な質問があります。

  1. 別の集約ルートのプロパティとして集約ルートを使用しても大丈夫ですか?
  2. 特定のエンティティを2つ以上の集約ルート内に配置しても問題ありませんか?

私の最後の質問はもう少し複雑です。「ウェブサイト」集約ルートに実際に属するエンティティがいくつかあるウェブサイトがあります。それらは、「ニュース」、「製品」、および「ユーザー」です。データベースには「Website」テーブルはありませんが、「Website」はこれら3つのエンティティの適切な集約ルートのようです。これは通常どのように達成されますか?

ありがとう!

4

1 に答える 1

1

ウェブサイト全体にまたがる一貫性のルールはありますか(複数のニュース製品と使用者に関して)?そうでない場合、これらのエンティティ(ニュース、製品、ユーザー)は、ルートを集約するための適切な候補です。

集約ルートの主な機能は、一貫性とトランザクションセマンティクスの境界を提供することです。

質問に答えるには:

  1. はい、この参照された集約ルートが、含まれているARの操作中に変更されない限り、問題ありません。これは一貫性の境界に関連しています。複数のアグリゲートにまたがる操作は、一貫性のある結果を生成することが保証されていないため、回避する必要があります。

  2. いいえ、エンティティ(ARではない)は1つの集合体の一部にしかなれません。

于 2010-05-20T05:02:06.830 に答える