设计原则
解决之道:采用良好的oo软件设计原则。
设计原则:
1.找出应用中可能需要变化之处,把他们独立出来,不要和那些不需要变化的代码混杂一起。分离变化。
2.针对接口编程,而不是针对实现编程。
3.多用组合,少用继承。有一个 比 是一个 好。利用继承设计子类的行为,是静态的,利用组合设计,动态的。
4.开放-关闭 原则。类应该对扩展开发,对修改关闭。为了更好的支持扩展,我们的目标是允许类容易扩展,在不修改现有代码的情况下就可搭配新的行为。
5.依赖倒置原则。要依赖抽象,不要依赖具体实现类。 避免让高层依赖于底层,都应该依赖于抽象。
- 变量不可以持有具体类的引用。使用工厂来解决。
- 不要让类派生自具体类。
- 不要覆盖基类中已实现的方法。
- 如果类会发生变化,就应用上面3条原则。
6.最少知识原则。只和你的密友谈话。
- 尽管实现这个原则可以减少维护成本,但是会使结构变得非常复杂
- 有的时候要在时间和空间,抽象和速度上取舍。
7.单一责任原则
类的每一个责任都有改变的潜在区域,超过一个责任,意味着超过一个改变的区域。
So 一个类应该只有一个引起变化的原因。