架构基础
软件架构设计与实践
6 篇笔记
架构设计概述
架构设计是对软件系统的高层结构和行为进行规划和决策的过程。它关注的是系统的整体组织方式、组件之间的交互关系,以及如何满足功能需求和质量属性(如性能、可扩展性、安全性、可维护性)。
常见架构模式:单体/分层/MVC/微内核
架构模式是解决特定架构问题的通用解决方案模板。选择正确的架构模式对于系统的成功至关重要,它会影响系统的可维护性、可扩展性和开发效率。
分层架构详解
分层架构是一种将软件系统划分为多个水平层的架构模式,每层只与相邻层交互。这种模式通过关注点分离来降低系统复杂性,提高可维护性和可测试性。
洁净架构:依赖倒置与同心圆
洁净架构(Clean Architecture)由Robert C. Martin提出,是一种通过依赖倒置原则将业务逻辑与外部依赖解耦的架构模式。其核心思想是:**业务规则应该独立于框架、UI、数据库或其他外部因素**。
六边形架构:端口与适配器
六边形架构(Hexagonal Architecture),也称为端口与适配器架构(Ports and Adapters),由Alistair Cockburn提出。其核心思想是将应用程序的核心业务逻辑与外部依赖(如数据库、UI、消息队列等)通过端口和适配器进行解耦。
事件驱动架构:CQRS与事件溯源
事件驱动架构(Event-Driven Architecture,EDA)是一种通过事件的产生、检测和消费来驱动系统行为的架构模式。在这种架构中,组件通过异步事件进行通信,而不是直接调用。