DDD架构为什么应该首选六边形架构? | 京东云技术团队

💡 原文中文,约2100字,阅读约需5分钟。
📝

内容提要

分层架构有严格分层和松散分层两种,典型的传统分层架构包括用户接口层、应用层、领域层和基础设施层。依赖倒置原则解决了资源库位置的问题,但违背了分层架构原则。采用依赖倒置后的分层架构类似六边形架构,整洁架构是其具体设计。整洁架构独立于框架、可测试、独立于UI、数据库和外部机构。依赖倒置原则后的分层架构和六边形架构都符合整洁架构设计理念。

🎯

关键要点

  • 分层架构分为严格分层和松散分层。
  • 用户接口层、应用层、领域层和基础设施层是传统分层架构的典型组成部分。
  • 用户接口层处理用户请求,应用层实现业务流程,领域层包含核心业务逻辑,基础设施层提供技术服务。
  • 资源库用于获取或持久化聚合,资源库接口应位于领域层,接口实现依赖基础设施层。
  • 将资源库接口实现放在基础设施层会违反分层架构原则。
  • 依赖倒置原则允许高层模块和低层模块都依赖于抽象,打破了传统分层架构的限制。
  • 依赖倒置后的分层架构类似于六边形架构,强调抽象依赖。
  • 六边形架构通过端口和适配器实现系统输入输出的不同交互方式。
  • 整洁架构是对六边形架构的总结,强调独立于框架、可测试、独立于UI和数据库。
  • 整洁架构规定内层不依赖外层,符合依赖倒置原则。
  • 依赖倒置后的分层架构和六边形架构都符合整洁架构设计理念。
➡️

继续阅读