战术设计是根据领域模型进行微服务设计的过程。这个阶段主要梳理微服务内的领域对象,梳理领域对象之间的关系,确定它们在代码模型和分层架构中的位置,建立领域模型与微服务模型的映射关系,以及服务之间的依赖关系。包括以下两个阶段:
1)分析微服务领域对象
服务的识别和设计,事件风暴的命令是外部的一些操作和业务行为,也是微服务对外提供的能力。它往往与微服务的应用服务或者领域服务对应。我们可以将命令作为服务识别和设计的起点。具体步骤如下:
a)根据命令设计应用服务,确定应用服务的功能,服务集合,组合和编排方式。服务集合中的服务包括领域服务或其它微服务的应用服务。
b)根据应用服务功能要求设计领域服务,定义领域服务。这里需要注意:应用服务可能是由多个聚合的领域服务组合而成的。根据领域服务的功能,确定领域服务内的实体以及功能。
c)设计实体基本属性和方法
2)设计微服务代码结构
根据之前介绍的代码结构的设计,将不同的领域对象(服务)放到对应对应的目录结构即可
此文章为2月Day11学习笔记,内容来源于极客时间《DDD 实战课》