您好我正在尝试在一个简单的类集群上进行DDD。
举个例子。
我有渠道和贷方。
频道=频道A,频道B. 贷方=银行A,银行B,银行C
频道A有A银行,B B频道有B银行,C
在这种情况下,我如何设计我的聚合根?
汇总ID应该是银行特定的吗?或者它应该是特定渠道?
在我的其他聚合中,我只想知道它是ChannelA-BankA还是ChannelB-BankC,也就是一个唯一的ID。
我看到它的方式,我可以将Channel设为聚合根实体,或者将聚合根实体设为Bank,它不会有所作为?他们是一对一的关系。
或者我应该创建一个顶级类作为根并引用频道和银行?
有什么建议吗?
答案 0 :(得分:1)
总体设计总是很棘手,你越了解域越容易。对于外人来说,帮助是相当困难的(或不可能的):)
但请记住,这不一定是“哪一个是聚合物?”的问题。在你的情况下,很可能两者都是聚合,你通过值对象(VO)或ID链接它们。例如,您可以Channel
使用ChannelLender
VO,而在那些“其他”聚合中,如果您有Channel
/ Bank
链接,则可以使用其他一些VO,已使用ChannelLender
您需要来自您的泛在语言(UL)的名称来代表该概念。
希望有所帮助。