Design patterns 如何设计聚合根?

Design patterns 如何设计聚合根?,design-patterns,domain-driven-design,entity,aggregateroot,Design Patterns,Domain Driven Design,Entity,Aggregateroot,我想用DDD重构我的项目。有三个对象,如银行卡、渠道和用户。其关系如下: 银行卡可以通过多渠道签订合同 用户可以绑定多张银行卡 银行卡可以绑定到多个用户 现在项目有三个表,分别是银行卡表、银行卡与渠道合同表、银行卡与用户关系表。 我想将银行卡设计为实体,用户和渠道设计为价值对象(用户实体和渠道实体在其他域中维护)。 因此,我应该如何设计聚合根。考虑银行卡作为聚合和渠道列表,用户列表作为聚合根的属性,或者设计银行卡,银行卡签署合同,银行卡用户关系作为聚合根?< /P> < P>如果你只有一个实体(

我想用DDD重构我的项目。有三个对象,如银行卡、渠道和用户。其关系如下:

  • 银行卡可以通过多渠道签订合同
  • 用户可以绑定多张银行卡
  • 银行卡可以绑定到多个用户
  • 现在项目有三个表,分别是银行卡表、银行卡与渠道合同表、银行卡与用户关系表。 我想将银行卡设计为实体,用户和渠道设计为价值对象(用户实体和渠道实体在其他域中维护)。
    因此,我应该如何设计聚合根。考虑银行卡作为聚合和渠道列表,用户列表作为聚合根的属性,或者设计银行卡,银行卡签署合同,银行卡用户关系作为聚合根?< /P> < P>如果你只有一个实体(银行卡)和两个值对象,我想说,将实体建模为聚合根并将两个值对象建模为其属性听起来很自然。

    如果您只有一个实体(银行卡)和两个值对象,我想说,将实体建模为聚合根并将两个值对象建模为其属性听起来很自然。

    谢谢您的回答。我需要处理用户的绑定状态(如预绑定、已绑定、解除绑定),以及与频道的符号状态相同的状态。那么如何在聚合根目录中显示这些状态呢?谢谢您的回答。我需要处理用户的绑定状态(例如预绑定、已绑定、解除绑定),以及与频道的签名状态相同的状态。那么如何在聚合根目录中显示这些状态呢?