对比
| 维度 | 领域服务 | 应用服务 |
|---|---|---|
| 关注点 | 业务规则与不变量 | 用例编排与事务边界 |
| 状态 | 无状态 | 无状态 |
| 依赖 | 领域模型与领域接口 | 仓储、领域服务、消息与鉴权 |
| 示例 | 转账手续费计算 | 提交订单用例的流程编排 |
业务规则写进应用服务会导致多处重复;应用服务写进领域层会让模型依赖框架。
领域服务承载跨聚合的领域规则且无状态;应用服务负责编排用例:加载聚合、调用领域逻辑、提交事务、发布事件与权限校验,二者职责不应混同。
| 维度 | 领域服务 | 应用服务 |
|---|---|---|
| 关注点 | 业务规则与不变量 | 用例编排与事务边界 |
| 状态 | 无状态 | 无状态 |
| 依赖 | 领域模型与领域接口 | 仓储、领域服务、消息与鉴权 |
| 示例 | 转账手续费计算 | 提交订单用例的流程编排 |