OO原则:
- 封装变化;
- 多用组合,少用继承;
- 针对接口编程,不针对实现编程;
- 为交互对象之间的松耦合设计而努力;
- 对扩展开放,对修改关闭;
策略模式(Strategy Pattern):
- 定义算法族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。
观察者模式(Observer Pattern):
- 在对象之间定义一对多的依赖,这样依赖,当一个对象改变状态,依赖它的对象都会收到通知,并自动更新。
装饰者模式(Decorator pattern):
- 动态地将责任附加到对象上。想要扩展功能,装饰者提供有别于继承的另一种选择。