DDD基础-分层依赖-依赖倒置-六边形架构

传统分层和依赖倒置的分层的区别,好比是店大欺客和客大欺店的区别,谁强谁就指定标准。传统分层是下层提供标准,上层调用标准接口;而运用了依赖倒置的六边形架构,核心业务逻辑强,他就指定标准,其他的不管是他的上层还是下层都是依赖于这个标准;传统分层和依赖倒置无好坏,看场景,哪个层更强(为多个客户服务或核心服务);如果调用方和被调用方都很强呢,都想制定自己的标准,也没问题,加个适配器层适配就可以解决;下面在分别介绍下相关的概念细节:

传统分层

传统分层中,上层依赖下层,每次定义了接口和实现;依赖如下应用服务依赖领域服务,领域服务依赖数据库和远端服务;

DDD基础-分层依赖-依赖倒置-六边形架构_第1张图片

 

依赖倒置Dependence Inversion Principle

定义:A调用BA依赖于B;依赖倒置A指定服务标椎,AB共同依赖此标准。

此处领域服务层来定义标准,其他层实现此标准,经过改造后,依赖关系如下:

DDD基础-分层依赖-依赖倒置-六边形架构_第2张图片

上面的结构再细化下依赖关系,其实就是六边形架构了:

DDD基础-分层依赖-依赖倒置-六边形架构_第3张图片

六边形架构

六边形架构是把依赖反转更通用了,领域服务层是核心制定标准,其他的不管是持久数据的输出,还是其他系统调用的输入,统一看做依赖于核心,需要做适配。

DDD基础-分层依赖-依赖倒置-六边形架构_第4张图片

 

你可能感兴趣的:(DDD与中台化建设)