DDD-经典四层架构应用
文章目录 DDD分层与传统三层区别 DDD分层详解 四层架构图 分层作用 领域对象 DDD编码实践 代码结构描述 领域模型注入仓储类的问题 DDD分层与传统三层区别 根据DDD领域驱动设计原则,对应的软件架构也需要做出相应的调整。 我们常用的三层架构模型划分为表现层,业务逻辑层,数据访问层等,在 DDD 分层结构中既有联系又有区别, 个人认为主要有如下异同: 在架构设计上,在 DDD 分层结构中将传统三层架构的业务逻辑层拆解为应用层和领域层 其中Application划分为很薄的一层服务,非核心的逻辑放到此层去实现,核心的业务逻辑表现下沉到领域层去实现,凝练为更为精确的业务规则集合,通过领域对象去阐述说明。 在建模方式上, DDD 分层的建模思维方式有别于传统三层 传统三层通常是以数据库为起点进行数据库分析设计,而 DDD 则需要以业务领域模型为核心建模(即面向对象建模方式),更能体现对现实世界的抽象。 故 在DDD分层凸显领域层的重要作用,领域层为系统的核心,包括所有的业务领域模型的抽象表达 。 在职责划分上,基础设施层涵盖了2方面内容 持久化功能,其中原三层架构的数据访问层下沉到基础设施层的持久化机制实现 通用技术支持,一些公共通用技术支持也放到基础设施层去实现。 DDD分层详解 四层架构图 在该架构中,上层模块可以调用下层模块,反之不行。即 Interface ——>