没有使用策略模式时,我在构造时需要将配置项进行解析,然后判断是什么配置,在通过if else逻辑判断控制代码行为。
- 不符合开闭原则
- 不能做到自由切换
- if...else逻辑复杂,代码结构混乱
- 扩展性差
一个系统有许多类,而区分它们的只是他们实际行为时,可以采用策略模式。
使用strategy类时声明需要采用的策略,这时调用方法时会使用对应应用的子策略方法。
没有使用策略模式时,我在构造时需要将配置项进行解析,然后判断是什么配置,在通过if else逻辑判断控制代码行为。
一个系统有许多类,而区分它们的只是他们实际行为时,可以采用策略模式。
使用strategy类时声明需要采用的策略,这时调用方法时会使用对应应用的子策略方法。