应用服务
应用服务的本质是"为外部调用者提供一个简单统一的接口"。基于最小知识原则,可以让调用者了解的知识越少越好,这就是应用服务层存在的主要意义。
应用服务具备有如下特征:
- 不包含任何领域逻辑
应用服务可能会存在如下逻辑:
- 消息验证
- 统一错误处理
- 监控
- 事务
- 认证授权逻辑
应用服务和领域服务的区别
服务类型 | 设计粒度 | 任务编排 |
---|---|---|
领域服务 | 中粒度 | 对细粒度的领域对象(包括聚合、存储库)进行任务编排 |
应用服务 | 大粒度 | 只对中粒度领域服务进行任务编排,不关注领域内部概念 |
应用服务的本质是"为外部调用者提供一个简单统一的接口"。基于最小知识原则,可以让调用者了解的知识越少越好,这就是应用服务层存在的主要意义。
应用服务具备有如下特征:
应用服务可能会存在如下逻辑:
服务类型 | 设计粒度 | 任务编排 |
---|---|---|
领域服务 | 中粒度 | 对细粒度的领域对象(包括聚合、存储库)进行任务编排 |
应用服务 | 大粒度 | 只对中粒度领域服务进行任务编排,不关注领域内部概念 |