其中,1指的是“功能视图”,其他4个视图都是围绕该视图展开的,分别是逻辑视图、物理视图(部署视图)、开发视图、运⾏视图(进程视图)。
功能视图
对于B端的复杂业务系统,往往会画⽤例图,但对于C端产品,往往直接看交互设计稿或最终的UI原型图。
逻辑视图
系统的逻辑模块划分,数据结构、⾯向对象的设计⽅法论⾥⾯的类图、状态图等。
物理视图
整个系统所在的机房、各类机器数⽬、机器配置和⽹络带宽等。
开发视图
代码所在的⼯程结构、⽬录结构、Jar包、动态链接库、静态链接库等。
运⾏视图
系统的多进程、多线程之间的同步。
视图本⾝只是⼀个框、⼀个形式,引导开发者把系统的架构描述清楚,⽽重点是把系统⾯对的关键问题描述清楚,⽽不是拘泥于形式本⾝,并且不同类型的系统的侧重点也不同,也未必每个视图都需要很清楚的描述。否则架构就会成为⼀个“空架⼦”,虽然有很多的视图,但没有阐释清关键问题。