领域驱动分层实践

1、6边形架构

外6边形(技术域)
in:定时任务、Web接入点、RPC接入点、MQ消费者
out:MQ适配器、RPC适配器、仓库(mysql、redis、lucence.net)

内6边形(业务域)
应用服务->创建工厂->创建领域对象(聚合根、实体、值对象、事件)
-----更新-----领域对象(聚合根、实体、值对象、事件)

 

2、代码分层

application:聚合服务层,负责领域服务的流程编排以及领域事件的发布

domain:具体领域,基于接口编程
- model 包含聚合根,实体、值对象、常量、请求参数类、返回参数类
- validate: 字段检验规则
- factory: 包含validate检验器,以及XxxBuilder.create()方法(生产者模式)
当创建领域对象时,调用build()方法,赋值Builder字段给领域对象时,前置先检验字段是否合法
- exception
- repository:定义接口
- serivce: 领域服务接口+具体实现


posted @ 2024-01-04 20:26  yuxuan0802  阅读(80)  评论(0)    收藏  举报