banq,一个棘手的DDD设计问题
本质问题:
如果有一个对象,同时被两个根对象持有,该如何处理
案例:
比如,SNS中一个简单的收藏功能
一张照片,是属于主人这个根对象的。
但是收藏过后,可能既被主人对象持有这个对象的引用,
收藏人也应该持有这个对象的引用。
这种情况如何处理?想了好久,没有答案。
banq帮帮我
本质问题:
如果有一个对象,同时被两个根对象持有,该如何处理
案例:
比如,SNS中一个简单的收藏功能
一张照片,是属于主人这个根对象的。
但是收藏过后,可能既被主人对象持有这个对象的引用,
收藏人也应该持有这个对象的引用。
这种情况如何处理?想了好久,没有答案。
banq帮帮我
那它就是值对象,或者把它处理成值对象,只有值对象才可以共享或复制。
3Q
你果真是高手。
BANQ,我们小绵羊团队已经基本完全实现了DDD。
实现了缓存中对象的唯一性,缓存对象与数据库同步,缓存对象丢失自动重新加载并保持唯一性。
我们只需要加上分布式缓存,就可以完整的拿出一套DDD的NOSQL解决方案。
包括对象的检索,我们都没有采用HQL查询ID,并保存ID集合的这种方式。
但是我们对DDD的设计经验不足。
如果您感兴趣,我想和您一起探讨。
我的QQ是:427752734
如果分享了照片以后,照片的内容比如评论。。等信息发生了变化,那是否就不是值对象了?不能共享了?因为分享者和被分享者的照片是不同的?
ls 的认识发生偏差了,如你所说的“评论”他根本就不是照片的一部分,在数据上也没有必然的联系。
同一个对象在不同的应用场景中的身份和功能可能有所不同,的确是会存在转换。但不是如你所设想的这样。
[该贴被IceQi于2009-10-26 22:09修改过]