一、封装变化:找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。
二、针对接口编程,而不是针对实现编程。
三、多用组合,少用继承。
使用组合建立系统具有很大的弹性,不仅可讲算法族封装成类,更可以“在运行时动态的改变行为”,只要组合的行为对象符合正确的接口标准即可。
四、为交互对象之间的松耦合设计而努力
五、类应该对扩展开放,对修改关闭(开放-关闭原则)
六、里氏替换原则:
简而言之,就是子类可以替换父类
一、封装变化:找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。
二、针对接口编程,而不是针对实现编程。
三、多用组合,少用继承。
使用组合建立系统具有很大的弹性,不仅可讲算法族封装成类,更可以“在运行时动态的改变行为”,只要组合的行为对象符合正确的接口标准即可。
四、为交互对象之间的松耦合设计而努力
五、类应该对扩展开放,对修改关闭(开放-关闭原则)
六、里氏替换原则:
简而言之,就是子类可以替换父类