知识卡片
视图类型分组标准架构三视图
内容
视图类型(viewtype)是一组能轻松相互对应的视图分类——同一视图类型内的视图容易互相验证一致性(如功能场景视图和组件装配视图),跨视图类型则很难对应(如模块视图对应运行时视图,需要在脑中模拟代码运行才能确认)。软件架构有三个标准视图类型:模块视图类型(编译期可见的元素,如源代码、类、接口、组件类型定义)、运行时视图类型(也称组件和连接器视图类型,运行时才存在的实例,如功能场景、组件装配)、部署视图类型(软件在硬件上的部署,含环境元素和通信通道)。还有一种额外的Spanning(跨域)视图类型,专门放那些天然横跨多个标准类型、无法归入任何一类的内容,如”为提升吞吐量牺牲数据库范式化”这类同时涉及模块和运行时的设计权衡。
结构图:
flowchart TD
A[视图类型:能轻松互相对应的视图分组] --> B["模块视图类型<br/>编译期可见:源代码/类/接口/组件类型"]
A --> C["运行时视图类型<br/>运行时才存在:功能场景/组件装配/连接器实例"]
A --> D["部署视图类型<br/>硬件部署:环境元素/通信通道"]
A --> E["Spanning跨域视图类型<br/>横跨多类型,如设计权衡"]
参考来源
- 位置:《恰如其分的软件架构》第9章《设计模型》9.6节《视图类型》9.6.1-9.6.2小节(源文件:_epub-src/OEBPS/text00090.html)
- 结论依据:原文定义视图类型为易于相互对应的视图分组,列出模块/运行时/部署三种标准视图类型的具体内容,并说明Spanning视图类型用于放置横跨多个标准类型的内容(如数据库范式化与吞吐量的设计权衡)。
- 原始内容:视图类型是一组或一类可以轻松相互对应的视图……软件架构中有三个标准视图类型:模块视图类型、运行时视图类型及部署视图类型……这里展示了跨视图类型的一个例子,设计权衡。