Kush's Wiki

集約

commited date: 2025-02-02

#Software Design

DDDにおいて不変条件を適用するエンティティ値オブジェクトのようなオブジェクトのグループ単位

原文は以下

エンティティ値オブジェクトを集約の中にまとめ、各集約の周囲に境界を定義すること。各集約に対してルートとなるエンティティを1つ選び、境界の内部に存在するオブジェクトへのアクセスはそのルートを経由して制御すること。外部のオブジェクトが参照を保持できるのは、ルートのみとすること。内部のメンバに対する一時的な参照を渡してよいのは、単一の操作で使用する時だけだ。ルートがアクセスを制御するので、内部が知らないうちに変更されることはなくなる。この取り決めにより、どんな状態変化においても、集約内にあるオブジェクトと集約全体に対して、不変条件をすべて強制することが現実的になる。

Eric Evans | エリック・エヴァンスのドメイン駆動設計 | P127