什么是整洁架构?
**整洁架构(Clean Architecture)**围绕业务行为组织软件,将其与用户界面、数据库和框架分离。它的目标是减少技术变化对重要应用规则的影响。
例如,“已送达的订单不能取消”是一条业务规则。无论顾客使用网站还是移动应用,也无论采用什么存储技术,这条规则都不变。
主要部分
整洁架构通常用从内到外排列的同心圆表示:
- 实体: 保存核心业务数据和规则,例如订单及其取消条件。
- 用例: 协调某项具体的应用操作,例如读取订单、请求取消并保存结果。
**整洁架构(Clean Architecture)**围绕业务行为组织软件,将其与用户界面、数据库和框架分离。它的目标是减少技术变化对重要应用规则的影响。
例如,“已送达的订单不能取消”是一条业务规则。无论顾客使用网站还是移动应用,也无论采用什么存储技术,这条规则都不变。
整洁架构通常用从内到外排列的同心圆表示:
一个包含详细解答的 IT 面试题库——从初级到高级。
捐赠关键规则是:内部代码不能依赖外部代码。 用例可以使用在业务侧定义的订单存储接口;外部适配器使用具体技术实现该接口。
顾客请求取消时,控制器调用取消用例。用例通过数据访问接口读取订单,再让订单对象检查是否允许取消。
如果订单尚未送达并且满足条件,其状态就会变为已取消。用例请求保存变更,数据库适配器执行写入,控制器将结果返回给顾客。
运行时,业务逻辑仍然可以通过启动时连接好的接口调用适配器。依赖指向内部的规则针对的是代码组件之间的关系,并不表示数据或调用只能沿一个方向流动。
整洁架构适合业务行为复杂、开发周期长且需要频繁测试的系统。对于只读写少量表的小应用,更简单的结构可能更容易使用。如果无助于分离实际职责,就不必建立每一圈或每一个文件夹。