决定使其成为聚合的根或将其保留为聚合根的成员



我记得在埃里克·埃文斯(Eric Evans(关于DDD的书中,如果一个实体只能用其他实体(聚合的根(来理解,那么就让它成为一个"普通"实体(AR的成员(。

我的问题:"可以自己理解"到底是什么意思?我应该问自己什么问题才能知道一个实体是否可以独立理解?

我的问题:"可以自己理解"到底是什么意思?

如果它可以单独创建,或者必须在另一个上下文中创建。

我应该问自己什么问题才能知道一个实体是否可以独立理解?

"如果我直接修改该实体,或者实际上我需要进行检查(即 if语句(对其他相关实体集合的计算,以确保验证特定的业务规则

另一个问题是:"我是否拥有此实体中的所有信息来验证所有业务规则?

如果你有一个类,除了成为另一个类的一部分之外没有理由存在,那么它就不是AR。 原型例子是OrderOrderitem。 您永远不想跟踪生命周期OrderItem。 实际上,您可能希望将OrderItem建模为值对象。 不过,在您的领域中,并非所有这些概念都一定那么明显。

至于你链接到的Udi的帖子:能够从另一个创建AR将取决于该AR是你的界定上下文的一部分。 此外,我现在更喜欢从我的域中返回事件,而不是从域内引发它们。

最新更新