京东科技开发者

京东科技开发者 -

DDD学习与感悟——向屎山冲锋 | 京东云技术团队

在DDD思想中,repository表示资源库的概念,用于区分数据模型和领域模型。它操作的对象是聚合根,因此它属于领域层。由于过去ER模型以及主流ORM框架的发展,让很多开发者对实体的概念还停留在与关系形数据库映射这个层面。从而导致实体只有空洞的属性,而实体的业务逻辑散落各个service、util、helper、handler等各种角落中。这种现象就被称为贫血模型现象。如何判断自己的工程是否有贫血模型现象?1、大量的XxxDO或者Xxx:实体对象只包含与数据库表映射的属性,没有行为或者及其少量的行为。

软件设计是解决业务问题的桥梁,DDD是一种设计思想,通过显性化隐性概念、封装多对象行为等方式提高软件系统的扩展性和维护性。六边形架构将应用层、领域层和基础设施层分离,提高代码的可维护性和可测试性。实体类应保证不变性,领域服务用于处理多个领域对象的业务逻辑,副作用通过领域事件处理。DDD对大型复杂软件的建设和重构有指导作用。

DDD 六边形架构 实体类 软件设计 领域服务

相关推荐 去reddit讨论

热榜 Top10

eolink
eolink
观测云
观测云
LigaAI
LigaAI
Dify.AI
Dify.AI

推荐或自荐