アグリゲート
#DDD
集約
リポジトリ
に入出力する単位
状態を変更した時にデータの完全性が保たれるように
エンティティ
と
バリューオブジェクト
をまとめる
完全性→ルートエンティティが責任を持つ
カプセル化→アグリゲート内のオブジェクトに対する操作は全てルートエンティティを通して行う
参照が一気に消える→ルートエンティティにまとまっている事でルートの参照が消えると他も全部GCされて消える
アグリゲートは複雑になる→
ファクトリ
で生成する