设计模式学习(一)策略模式

来源:互联网 发布:无人机飞控系统编程 编辑:程序博客网 时间:2024/06/05 04:10

(what)什么是策略模式【定义】?

对算法(策略)进行封装,让调用方能很方便的切换不同的算法(策略)。


(how)怎样使用策略模式【原理】?

直接上代码:








【总结】



(when)什么时候使用【场景】?

当需求中需要给同一对象(客户/产品)制定一系列的规则(算法/策略)时,可以将这些同一纬度的规则单独封装起来,并聚合到调用者(上下文)内部来进行调用。


(why)为什么要用策略模式【设计原则】?

1.  Identify the aspects of your application that vary and separate them from what stays the same.
 * (找到系统中变化的部分,将变化的部分同其它稳定的部分隔开。变化的部分隔离成接口,聚合到需要的程序里)【扩展性好】
 2.  Program to an interface, not an implementation.
 * (面向接口编程,而不要面向实现编程。通过聚合、实现接口等方式)【灵活性好】

0 0
原创粉丝点击