知识卡片
三种架构模型的演化关系:核心都是业务逻辑与技术细节解耦
内容
DDD分层架构(2003年)、六边形架构(2005年)、洋葱架构(2008年)三者虽然对外表现形式差异很大,实际上是一条清晰的演化脉络:DDD分层架构体现的是上下层依赖关系;六边形架构把这种关系演化成内外六边形(内六边形是业务逻辑,外六边形是外部应用和基础资源),但此时业务逻辑内部还没有明显的领域模型概念;洋葱架构进一步把DDD分层的概念和要素(应用服务、领域服务、领域模型)引入业务逻辑内部,并明确定义了”外层依赖内层、内层对外层无感知”的依赖原则——洋葱架构实际上是六边形架构的一个超集。三者虽然图示形态不同,核心设计思想却完全一致:都要把核心业务逻辑和技术实现细节分离解耦,都体现”高内聚、低耦合”的原则,都以领域模型为中心。这个演化关系提醒:面对多种命名不同、图示不同的架构模型时,不要被表象形式迷惑,先去找它们各自那条”核心逻辑与外部隔离”的分界线,往往会发现不同名字背后是同一个核心思想的不同呈现方式。
参考来源
- 位置:第11章《几种微服务架构模型对比分析》"11.3 三种微服务架构模型的对比和分析"(源文件:_epub-src/OEBPS/Text/chapter3-7-3.xhtml)
- 结论依据:原文说明"虽然这三种架构模型在对外的表现形式上存在很大的差异,实际上它们包含了一种演化的关系,其核心设计思想是一致的……洋葱架构实际上是六边形架构的一个超集……不要被它们的表象所迷惑。它们的核心设计思想,都是要做到核心业务逻辑和技术实现细节的分离和解耦",直接支撑本卡片结论。
- 原始内容:虽然DDD分层架构、洋葱架构、六边形架构的架构模型表现形式不一样,但不要被它们的表象所迷惑。它们的核心设计思想,都是要做到核心业务逻辑和技术实现细节的分离和解耦。