知识卡片

共同封闭原则与共同复用原则

普通读书笔记卡 · 1946.b

内容

决定哪些类该放进同一个包,是一个需要设计技巧的复杂问题,两条常被引用的原则给出了方向:共同封闭原则主张包中的类应该因为相似的原因而一起改变,同一类需求变动总是牵连的类就该在同一个包里;共同复用原则主张包中的类应该被一起复用,引用方总是要么都用到、要么都不用的类就不该拆进不同的包。这两条原则的共同出发点都不是外观相似度,而是实际的变更和复用模式,把类的分组决策和依赖管理绑在了一起。

参考来源

- 位置:《UML精粹:标准对象建模语言简明指南(第3版)》第7章《包图》(源文件:_epub-src/EPUB/6.xhtml) - 结论依据:原文说明"这有两个有用的原则:共同封闭原则和共同复用原则[Martin]。共同封闭原则说明包中的类应该由于相似的原因而改变。共同复用原则说明包中的类应该一起被复用",把分组决策与依赖管理直接关联起来。 - 原始内容:你如何选择哪个类放在哪个包里?这确实是一个十分复杂的问题,需要很多设计技巧。这有两个有用的原则:共同封闭原则和共同复用原则[Martin]。共同封闭原则说明包中的类应该由于相似的原因而改变。共同复用原则说明包中的类应该一起被复用。