作者:明明如月学长, CSDN 博客专家,大厂高级 Java 工程师,《性能优化方法论》作者、《解锁大厂思维:剖析《阿里巴巴Java开发手册》》、《再学经典:《Effective Java》独家解析》专栏作者。
架构的 4+1 视图模型是由 Philippe Kruchten 提出的,它是描述软件架构的一种方法,旨在通过不同的视图来满足不同利益相关者的需求。
这个模型包括四个视图(逻辑视图、开发视图、进程视图、物理视图)加上一种用于描绘它们之间关系的场景(用例)。
视图 | 描述 | 例子 |
---|---|---|
逻辑视图 | 描述了系统的功能性需求。它表示了系统的抽象层面,关注于功能的实现。 | 以面向对象的方式展示系统,如类图、包图。 |
开发视图 | 描述了系统的软件模块组织结构,关注于软件的模块化和层次化,以及各模块之间的关系。 | 展示了软件的源代码组织,如目录结构、层次结构图。 |
进程视图 | 描述了系统的动态方面,即系统运行时的进程和线程如何交互,以及它们如何被调度和同步。 | 进程通信图、同步和并发处理机制。 |
物理视图 | 描述了系统的物理部署结构,包括软件组件在物理硬件上的分布情况,以及这些硬件之间的物理连接。 | 部署图,如服务器、网络连接、物理存储。 |
+1(场景) | 通过使用实际的使用案例来说明在不同的视图中定义的元素是如何相互作用的。这有助于验证和演示架构的完整性和有效性。 | 使用场景、用例图。 |