天天看点

领域驱动设计DDD-开源COLA架构落地实践规则通过项目实践,整理出来的一些规则,供参考。*adapter层的作用是接受

作者:软件架构

领域驱动设计DDD-开源COLA架构落地实践规则

通过项目实践,整理出来的一些规则,供参考。

* adapter层的作用是接受外部请求,相当于六边形架构中的adapter适配器;业务逻辑沉淀到application层和domain层中,adapter层只是协议,要薄;

* application层的作用是编排业务,负责业务流程串联,不负责业务逻辑;

* domain层是业务规则的集合,application service编排业务,domain service编排领域;

* domain体现在业务语义显现化,不仅仅是一堆代码,代码即文档、代码即业务;

* 应用要达到高内聚就得充分发挥domain层的优势,domain层不单单是domain service,还有aggregate root(聚合根)、entity(实体)和value object(值对象);

* 领域对象提供了简单的单实体业务逻辑,将多实体的复杂业务逻辑放到domain service中;

* 领域对象应该是一个纯内存操作,不依赖于Repository,这样提高了领域对象的可测试性;

* infrastructure层是基础设施层,为其他层提供通用的技术能力:编程框架,持久化机制,消息机制,外部服务的封装,通用算法等等;

* 封装CRUD操作为gateway,接口在domain层中定义,具体实现在Infrastructure层,这也服务整洁架构;

* 通过application层串联业务流程;

* 通过adapter提供对外接口;

《COLA 4.x架构入门和项目实践》技术专栏首先介绍了COLA框架的使用入门,以及与IDEA开发工具的集成等等;然后基于COLA架构,创建DDD经典示例项目-货物运输系统,详细介绍了DDD领域建模、适配层、应用层、领域层和基础设施层的代码开发、防腐层(ACL)设计与实现、领域事件(Domain Event)入门实践、以及基于Kafka消息中间件的消息发布和订阅等等。内容由浅入深,从开发实战出发,逐步掌握基于COLA架构和DDD领域建模思想构建复杂业务应用系统。

领域驱动设计DDD-开源COLA架构落地实践规则通过项目实践,整理出来的一些规则,供参考。*adapter层的作用是接受
领域驱动设计DDD-开源COLA架构落地实践规则通过项目实践,整理出来的一些规则,供参考。*adapter层的作用是接受
领域驱动设计DDD-开源COLA架构落地实践规则通过项目实践,整理出来的一些规则,供参考。*adapter层的作用是接受
领域驱动设计DDD-开源COLA架构落地实践规则通过项目实践,整理出来的一些规则,供参考。*adapter层的作用是接受