什么是干净架构

目录

什么是干净架构?

何时应使用干净架构?

何时不应使用干净架构?

如何通过垂直切片架构扩展你的系统?

如何学习干净架构和领域驱动设计?


这次我们将讨论"干净架构",它是什么,什么时候应该使用,什么时候不应该使用?我们将深入了解为什么需要垂直切片架构,并分享一些关于干净架构和领域驱动设计的学习资源。

什么是干净架构?

"干净架构"哲学强调软件设计中关注点的分离,创建模块化、可测试、可维护的代码的重要性。由软件工程师和顾问 Robert C. Martin 发展并于2012年在这篇blog上介绍的。

干净架构提倡的是,软件系统应该被设计成能够被长期理解和维护的。为了实现这个目标,干净架构提出了一种分层架构,明确不同系统组件之间的边界,实现对框架、UI、数据库和交付机制的独立性,并可以单独进行测试。干净架构从六角架构(又称为端口和适配器)借鉴了一些想法,该架构强调将业务逻辑与外部依赖分离。这种架构模式通过将核心应用程序与外部框架和库解耦来促进更易于测试和提高灵活性。

干净架构哲学定义了一系列层次结构,从最一般、最抽象的层次开始,逐渐向更具体、更具体的层次移动。这些层包括:

  • 实体:系统的基本对象,代表核心业务逻辑和数据。他们封装了最一般和高级的规则。

  • 用例:高级系统与其用户或其他外部系统之间的交互,包含应用程序特定的业务规则。这一层不应对实体或外部系统产生影响。

  • 接口:系统与外部系统或用户进行通信的机制。这里,我们可以有一个 GUI 的 MVC 架构。

  • 控制器:负责管理数据在其他系统层次之间的流动的组件。

  • 展示器:负责将数据呈现给用户或其他系统的组件。

  • 基础设施:负责与诸如数据库或 API 等外部系统或服务进行交互的组件。

什么是干净架构_第1张图片

干净架构中的一个应用程序结构如下:

你可能感兴趣的:(架构,microsoft)