策略模式:分别封装行为接口,实现算法簇,父类里放行为接口对象,在子类里具体设定行为对象。
原则就是:分离变化部分,将变化部分封装成接口,然后基于接口编程各种功能。此模式让行为算法的变化独立于算法的使用者。
注意点:
1、分析项目变化与不变化部分,提取变化部分,抽象成接口+实现。
2、多用组合少用继承;用行为类组合,而不是行为的继承。更有弹性
3、有些库或框架本身就是用某种设计模式设计的。
策略模式:分别封装行为接口,实现算法簇,父类里放行为接口对象,在子类里具体设定行为对象。
原则就是:分离变化部分,将变化部分封装成接口,然后基于接口编程各种功能。此模式让行为算法的变化独立于算法的使用者。
注意点:
1、分析项目变化与不变化部分,提取变化部分,抽象成接口+实现。
2、多用组合少用继承;用行为类组合,而不是行为的继承。更有弹性
3、有些库或框架本身就是用某种设计模式设计的。