同一データに作用する複数の集約
集約 は 整合性 の制約を保証する役割を担う
集約は整合性の境界
同じデータに作用する 集約 が複数ある場合、どう整合性を保証できるか
e.g. Account 集約と MoneyTransfer 集約
どちらもアカウントの残高に作用し、残高がマイナスにならないようにする必要がある
型を使って制約をモデリングすれば、複数の集約間で共有できる
e.g. 残高がマイナスにならない
NonNegativeMoney 型
できなければ、検証関数の共有でも可能