战术设计(Tactical Design)
战术设计是领域驱动设计中处理领域模型内部细节的微观设计方法,它关注如何实现业务逻辑的具体技术细节。
通俗理解
战术设计就像建筑内部设计:
- 房间功能布局(客厅、卧室、厨房)
- 家具摆放和装饰细节
- 水电管线等基础设施
核心模式
null
主要组件
- 实体:具有唯一标识的领域对象
- 值对象:通过属性定义的对象
- 聚合:一组相关对象的集合
- 领域服务:跨聚合的业务逻辑
- 领域事件:业务状态变化的记录
- 仓储:持久化接口
- 工厂:复杂对象的创建逻辑
设计原则
- 高内聚:相关逻辑放在一起
- 低耦合:减少组件间依赖
- 显式表达:代码清晰表达业务意图
- 可测试性:便于单元测试和验证
实施步骤
- 识别领域模型中的关键概念
- 定义实体和值对象
- 划分聚合边界
- 设计领域服务和事件
- 实现仓储和工厂