domain-driven-design - 所有的类都包含业务逻辑、域对象吗?

标签 domain-driven-design microservices business-logic

所以我对将某些东西称为域对象(并最终将类放在域包下)几乎没有怀疑。

我有一个微服务,它的职责是做一些计算(在不涉及实际业务需求的情况下,它所做的只是根据给定的请求计算一些兴趣的返回)。现在为了实现计算,需要进行某些子计算,因此分别在不同的类中组成。但是是的,这些计算不需要保存在 DB 中,而且它们都没有 ID(所以绝对不是实体或聚合)。然而,这些单独的计算器类(由于缺乏术语)确实包含一些复杂的业务逻辑。现在,我的问题是,这些单独的类是否仍然符合/分类为域对象,还是应该将它们称为服务?

如果需要,请随时询问有关用例的更多说明。

干杯!

最佳答案

Now, my question is, do these individual classes still qualify/classify as domain objects or should they be referred to as services



从 DDD 的角度来看,在 Domain 层,有以下术语可以使用类来实现:Domain entities , Aggregate roots (一种 Domain entity ),Value objectsDomain services .

因为你的东西没有Identity他们不能是 Domain entitiesAggregate roots .可以在内部进行计算Value objectsDomain services . Value objects包含与值相关的特定行为,因此最有可能 您的计算是使用 Domain services 实现的 .

根据我的经验,并不是每个域类都必须是 DDD 构建块,它们可以只是为了更好的可维护性而提取的类、单一责任原则(一般为 SOLID)等。

关于domain-driven-design - 所有的类都包含业务逻辑、域对象吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47656406/

相关文章:

java - 微服务和maven结构

java - 如何在不更改代码的情况下将限制应用于 spring/hibernate 企业应用程序中的所有业务点?

architecture - 在 DDD 中,域模型实体可以访问其存储库吗?

domain-driven-design - 在 DDD 中,每个存储库或限界上下文或事务的 UoW?

amazon-web-services - AWS 上的 Spring Boot/云微服务

domain-driven-design - DDD - 将项目添加到订单/收据时的价格计算

asp.net-mvc - 如何处理只能在 UI 中实现的业务逻辑?

java - 设计方法(领域驱动或服务驱动)

c# - NHibernate IQueryable 集合作为根的属性

python - docker 中的微服务 FastAPI 测试,返回 404