设计原则
- 找出应用中可能需要变化之处,把他们独立出来,不要和那些不需要变化的代码混在一起。
- 针对接口编程,而不是针对实现编程。
- 多用组合,少用继承。
- 为了交互对象之间的松耦合设计而努力。
- 类应该对扩展开放,对修改关闭。
设计模式
策略模式
定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变换独立于使用算法的客户。
观察者模式
定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。
装饰者模式
动态地将责任附加到对象上,若要扩展功能,装饰者提供了比继承更有弹性的替代方案。