多层、六边形、洋葱和clean架构简介

10年前,你只需要知道GoF模式,你就可以称自己是一个优秀的开发人员。

现在不是了!

如果你想构建高质量的软件,你需要架构知识。

N层架构
这种体系结构将应用程序组织成水平层,每个层负责特定的任务。 

  • - 表现层
  • - 业务逻辑 
  • - 数据存取 

六边形结构
也称为端口和适配器,六边形架构将核心应用程序与外部依赖项隔离。 
核心定义端口/接口,而适配器是实现。
这种架构通过将应用程序与框架和技术分离,提高了灵活性和可测试性。

洋葱架构
基于六边形架构的原则,洋葱架构在核心/域和基础设施之间建立了明确的分离。
层围绕着核心,内层表示抽象的业务关注点,外层处理技术细节和框架。

Clean架构
由Uncle Bob提出的Clean Architecture强调关注点的分离以及业务规则与外部框架的独立性。 层之间的清晰边界确保了可伸缩性、可维护性以及与项目需求的一致性。

这些体系结构提供了不同的方法来设计软件系统,每一种都有其优点和缺点。 但最终,体系结构的选择取决于项目的特定需求!

更详细:后端流行架构演进