当前位置: 首页 > article >正文

03.DDD六边形架构

学习视频来源:DDD独家秘籍视频合集 https://space.bilibili.com/24690212/channel/collectiondetail?sid=1940048&ctype=0

文章目录

  • 什么是依赖
  • DDD四层架构
  • 六边形架构
    • 代码实现

想要详细了解六边形架构,可以看我之前的一篇文章。是对六边形架构原文的翻译:https://blog.csdn.net/Theflowerofac/article/details/132815671

什么是依赖

对于程序单元A和B

  • 编译依赖:如果要编译A,必须要用到B的编译结果,则在编译期A依赖B。
  • 运行依赖:在运行期,如果B不能运行,则A一定也不能运行,则A在运行期依赖B。
  • 语义依赖:如果要理解A的语义,必须先理解B的语义,那么A在语义上依赖B。一般A在编译上依赖B,那么A在语义上也会依赖B,因为A使用的B的代码。

DDD四层架构

在这里插入图片描述
DDD原著中提到的四层架构,已经被六边形架构淘汰了。

六边形架构

在领域模型落地的时候,六边形架构是最常见的一种架构模式。
在这里插入图片描述
将依赖反转,得到六边形架构,又叫洋葱型架构,端口适配器架构。对于领域驱动设计来说,最关心的是从代码里分离一个领域核心模块出来,用来实现领域模型。它应该用领域的语言实现代码,不能依赖其他模块代码,应该让这个模块在程序上作为一个单独的模块独立出来,在编译期就不依赖其他的模块。在实践中为了技术实现方便,可以工具类,如日志组件gg、数学工具类等

代码实现

在这里插入图片描述


http://www.kler.cn/a/377992.html

相关文章:

  • 自研小程序-心情追忆
  • 使用 Spring Boot 搭建 WebSocket 服务器实现多客户端连接
  • RHCSA课后练习3(网络与磁盘)
  • 「C/C++」C/C++标准库 之 #include<cstdlib> 通用工具函数库
  • 私有化视频平台EasyCVR视频汇聚平台接入RTMP协议推流为何无法播放?
  • 面试经典 150 题:189、383
  • apache pdfbox 设置PDF表单域,Java生成PDF模板简单案例。
  • 【ARCGIS实验】地形特征线的提取
  • Spring Boot框架下校园社团信息管理的创新实践
  • 图像识别中的高斯滤波和椒盐滤波的适用场景与不同实现
  • SpringBoot 集成 Mybatis-Plus,LambdaQueryWrapper 使用方法
  • Git 本地操作(2)
  • Razor C# 逻辑
  • -XSS-
  • Qt的程序如何打包详细教学
  • React常用前端框架合集
  • Ubuntu下安装和配置MySQL5.7教程
  • C/C++中的基本数据类型
  • Qt——QWidget
  • Java类和对象(上篇)
  • Github 2024-10-30C开源项目日报 Top10
  • 正则表达式学习
  • 【系统架构设计师】2024年上半年真题论文: 论模型驱动架构设计方法及其应用(包括解题思路和素材)
  • 操作系统——计算机系统概述——1.4操作系统结构
  • 【2】Elasticsearch 查询从基础到高级
  • jsweb2