策略模式(strategy)

Posted lhh666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了策略模式(strategy)相关的知识,希望对你有一定的参考价值。

策略模式在编程中使用接口,而不是对接口的实现

面向接口的编程

  • 策略模式的定义
  1. 定义一组算法,将每个算法都封装起来,并且使它们之间可以互换
  2. 策略模式使这些算法在客户端调用它们的时候能够互不影响地变化
  • 策略模式的实现
  1. 策略模式的用意是针对一组算法,将每一个算 法封装到具有共同接口的独立的类中,从而使 得它们可以相互替换。
  2. 策略模式使得算法可以在不影响到客户端的情 况下发生变化。使用策略模式可以把行为和环 境分割开来。
  3. 环境类负责维持和查询行为类,各种算法则在 具体策略中提供。由于算法和环境独立开来, 算法的修改都不会影响环境和客户端
  • 策略模式的编写步骤
  1. 对策略对象定义一个公共接口。
  2. 编写策略类,该类实现了上面的公共接口
  3. 在使用策略对象的类中保存一个对策略对 象的引用。
  4. 在使用策略对象的类中,实现对策略对象 的set和get方法(注入)或者使用构造方法完成赋值

 

以上是关于策略模式(strategy)的主要内容,如果未能解决你的问题,请参考以下文章

策略模式(strategy)

策略模式(Strategy)

设计模式 之 策略(Strategy)模式

策略模式(Strategy)

C#设计模式-策略者模式(Strategy)

策略模式(strategy)