聚合根的一点疑问
可以抽象出,聚合根:交易,用户和商品是交易的属性
那用户这个对象 那就不是聚合根,而是值对象?
随着业务的发展,比如根据交易衍生出等级会员制度,那用户是不是也会变成一个聚合根
CQRS中读缓存是缓存整个领域对象还是缓存值对象?
缓存领域对象,数据的一致性挺难保证的
领域层中说的领域对象指的是聚合根还是所有的对象?
[该贴被tecentIDA8F53于2013-12-06 14:30修改过]
聚合根与上下文场景是有关的,比如我们说北京是首都,它是指中国的首都,是中国这个边界上下文的聚合根,中国在我们谈话表达时是隐藏的一个定义,因为别人不会认为北京是日本的首都。
所以,提取聚合根,首先是找出上下文边界,中国和日本至少要划清边界,现在航空识别区也是在干这事,但是很不容易,最难的。
分析需求也是这样,找出上下文边界是最难,找到了,聚合根也就找到了。
你这个案例将两个上下文场景混同在一起,一个是用户交易场景,一个是用户会员等级场景。
顿悟得很正确,职责 模块 上下文都是一个思路方向的不同用词。