知识卡片
主分解的专横
内容
图书馆的书可以按主题、大小、颜色或作者摆放,但书架只能选一种排序方式,选中的关切就成了”主分解”——按大小摆放能轻松找到最厚的书,却很难找到某位作者的所有作品。系统分解成模块或组件同样道理:一旦选定某个关切(多数系统选功能)作为主分解,相关问题会变得容易处理,但其他关切(如安全性、可移植性)相关的问题会变得难以处理,这种此消彼长现象称为”主分解的专横”,能帮你提前预判哪些未来的需求变化会特别痛苦。
参考来源
- 位置:《恰如其分的软件架构》第11章《封装和分割》11.2节《层级和分割》(源文件:_epub-src/OEBPS/text00107.html)
- 结论依据:原文用图书馆书籍按主题/大小/作者等不同方式摆放的类比,说明系统分解也只能选一个主关切,其他关切相关的问题会因此变得难以解决,这种现象被Tarr等人(1999)称为"主分解的专横"。
- 原始内容:书可以按照主题、颜色、大小、作者或其他的关切来进行组织,而你只能选择其中之一,这个选中的关切将成为主分解……一个关切阻碍了其他关切,这个问题被称为主分解的专横(tyranny of the dominant decomposition)。