前言
在计算机编程中,包设计原则作为一种方式在大型系统中组织类使系统更加有组织和可管理,它指导我们让我们明确哪个类应该放在哪个包里面(包的内聚原则),以及包与包之间如何互相关联的关系(包的耦合原则)
包的内聚原则
- 重用等价发布原则(Reuse-release equivalence principle,REP)
- 包必须和可复用的类一起创建
- 类的粒度等价于包的粒度
- 重用的粒度就是发布的粒度
- 要么类全部包含在包里,要么全部不包含在包里
- 共同重用原则(Common-reuse Principle,CRP)
- 一个包中的所有类应该是共同重用的
- 如果重用了包中的一个类,那么就要重用包中的所有类
- 共同封闭原则(Common-closure Principle,CCP)
- 包中的所有类对于同一类性质的变化应该是共同封闭的
- 一个变化若对一个包产生影响,则将对该包中的所有类产生影响,对其他包则不影响
包的耦合原则
- 无环依赖原则(Acyclic dependencies principle,ADP)
- 在包的依赖关系中不允许存在环
- 稳定依赖原则(Stable-dependencies principle,SDP)
- 朝着稳定的方向进行依赖
- 稳定抽象原则(Stable-abstractions principle,SAP)
- 包的抽象程度应该和其稳定程度一致