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