什么时候应该将责任分配给服务而不是实体对象?
when should assign responsibility to service instead of entity object?
是否有任何经验法则表明何时应该将责任分配给服务对象而不是实体对象?我真的很困惑。
据我对领域驱动设计的了解,实体对象是一些复杂数据的表示。他们很可能没有任何业务逻辑。
因此,如果您正在考虑仅保存数据的责任,那么它将进入实体对象。服务对象负责对具有提供上下文的给定值或实体对象执行复杂逻辑。
我认为这里没有经验法则。确定 classes 的职责是设计 OO 软件的技巧。
也就是说,您的 class 设计应该会给您一些提示。例如,如果您计划创建一个方法作为实体的一部分,但该方法需要不属于实体的数据,这表明该方法在实体之上的级别上运行,可能是域服务。
当您需要对多个聚合根进行操作时,请使用域服务。
是否有任何经验法则表明何时应该将责任分配给服务对象而不是实体对象?我真的很困惑。
据我对领域驱动设计的了解,实体对象是一些复杂数据的表示。他们很可能没有任何业务逻辑。
因此,如果您正在考虑仅保存数据的责任,那么它将进入实体对象。服务对象负责对具有提供上下文的给定值或实体对象执行复杂逻辑。
我认为这里没有经验法则。确定 classes 的职责是设计 OO 软件的技巧。
也就是说,您的 class 设计应该会给您一些提示。例如,如果您计划创建一个方法作为实体的一部分,但该方法需要不属于实体的数据,这表明该方法在实体之上的级别上运行,可能是域服务。
当您需要对多个聚合根进行操作时,请使用域服务。