Vaughn Vernonの記事を読んだことがあります。彼は、集合体はIDによってのみ相互に参照する必要があると述べています。
アグリゲートBのIDへの参照を持つアグリゲートAがあるとします。UIにアグリゲートBの列を含むアグリゲートAを含むリストを表示したいと思います。
つまり、最初にアグリゲートAをクエリする必要があり、次にアグリゲートAからの参照を使用してアグリゲートBをクエリする必要があります。
これはN + 1の問題のようですが、「IDによる参照」ルールを尊重しながら、どうすればこれを解決できますか?
ドメインオブジェクトは通常、クエリに適していないため、クエリを実行しないでください。ドメインは、データを作成および書き込むもののコマンド/トランザクション側により関心があります。
一方、クエリ/レポートはデータの読み取りに関係しています。この目的のために、使用しているデータレイヤーに可能な限り近い軽量のクエリメカニズムを開発できます。そのため、必要な結合とデータ集約とともに、生データまたは読み取りモデル(DTO)を返します。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加