知识卡片
场景与权衡串联视图类型
内容
把架构拆成多个视图类型有利于分别理解每个关注点,但也带来副作用:割裂了整体感。功能场景和设计权衡能跨越视图类型边界,把被拆开的视图重新串联——多数场景只描述单一类型内的事件序列,有些场景(如Apache按配置文件初始化组件实例)天然跨越类型;可修改性归模块视图关心、性能归运行时视图关心,二者权衡本身横跨两种类型。实践建议:解释系统时,至少从每种标准类型挑一个代表性视图。
参考来源
- 位置:《恰如其分的软件架构》第9章《设计模型》9.6.5节《视图类型串联》、9.6.6节《关于整体性的建议》(源文件:_epub-src/OEBPS/text00090.html)
- 结论依据:原文说明功能场景和设计权衡能跨越视图类型边界串联被分离的视图,举Apache基于配置文件初始化组件为例,并建议解释系统时至少从每种标准视图类型挑一个代表性视图,避免遗漏对方不知道的隐含假设。
- 原始内容:功能场景跨越了视图类型的边界,这样就串联起了那些不相关的视图……设计权衡也可以跨越视图类型……如果正在试图向某人解释你的系统,最好是从每一种视图类型中选取一个有代表性的视图。