1つのAggregateの中でのConsistency
同期的に
Consistency (ddd)
を保つが、
Aggregate
がそもそもそういうものなので比較的簡単
Consistencyを保つ最も簡単な方法は、毎回計算すればいい
totalAmount
というpropertyを持たずに、
sum [Orderline.amount]
とすれば良い
Accidental Complexity
の話とも関連してくる
mrsekut.icon
そもそもデータとして持たなければ状態も減るのでそういう嬉しさも得られる
どうしても永続化したい場合
Aggregate Root
が内部のことを全て管理するように実装する
というか
Aggregate
という単位がそもそもそういうものなので、なにか特別なことを考える必要はない
ここでは、
Order.totalAmount
は
Persistent Accidental Complexity
ということになる
mrsekut.icon
/mrsekut-book-4048931164/121: 6.5.1 1つの集約内での整合性