DDD学习笔记---如何保证领域模型与代码模型的一致性?

领域对象的整理

完成微服务拆分后,领域模型的边界和领域对象就基本确定了。

我们第一个重要的工作就是,整理事件风暴过程中产生的各个领域对象,比如:聚合、实体、命令和领域事件等内容,将这些领域对象和业务行为记录到下面的表格中。

你可以看到,这张表格里包含了:领域模型、聚合、领域对象和领域类型四个维度。一个领域模型会包含多个聚合,一个聚合包含多个领域对象,每个领域对象都有自己的领域类型。领域类型主要标识领域对象的属性,比如:聚合根、实体、命令和领域事件等类型。

DDD学习笔记---如何保证领域模型与代码模型的一致性?_第1张图片

从领域模型到微服务的设计

领域对象与微服务代码对象的映射

典型的领域模型

个人客户领域模型中的个人客户聚合,就是典型的领域模型,从聚合内可以提取出多个实体和值对象以及它的聚合根。

我们看一下下面这个图,我们对个人客户聚合做了进一步的分析。提取了个人客户表单这个聚合根,形成了客户类型值对象,以及电话、地址、银行账号等实体,为实体方法和服务做了封装和分层,建立了领域对象的关联和依赖关系,还有仓储等设计。关键是这个过程,我们建立了领域对象与微服务代码对象的映射关系。

DDD学习笔记---如何保证领域模型与代码模型的一致性?_第2张图片

在建立这种映射关系后,我们就可以得到如下图的微服务代码结构了。

DDD学习笔记---如何保证领域模型与代码模型的一致性?_第3张图片

你可能感兴趣的:(领域驱动设计,学习)