能力强的人善于解决问题,有智慧的人善于绕过问题。 区别很微妙,小心谨慎做后者。
全部博文(399)
分类: 架构设计与优化
2015-07-02 15:01:33
我们知道DDD中,Aggregate和面向对象的Class是不同的。虽然也讲究高内聚,但是Aggregate对粒度有苛刻的要求。<br />
<br />
一个Aggregate是一个事务一致性的边界。
鉴定方法如下:
如果一部分属性自身会随着时间改变,或者变化时这个属性集可以完全被替换,那么这些属性需要单独放到一个Value Object中,而不是放在Entity中。;
这样,Aggregate就包含了根entity和Value对象,Aggregate本身不是不变体,因为值对象经常被替换。但是Entity是不变体.
A Value-typed property is an attribute that holds a reference to a Value Object。