`
webdev2014
  • 浏览: 678513 次
文章分类
社区版块
存档分类
最新评论

设计模式之策略模式

 
阅读更多

内容:


结构图:

结构代码:

重点:Context类的作用

小结:

策略模式是一种定义一系列算法的方法,所有这些算法完成的都是相同的工作(抽象策略类中的方法),只是实现不同(具体策略类),它可以以相同的方式调用所有算法(通过Context类实现),减少了各种算法类与使用算法类之间的耦合。

优点:

(1)策略模式的Strategy类层次为Context定义了一系列可供重用的算法或行为。继承有助于析取出这些算法中的公共功能。(2)简化了单元测试,因为每个算法都有自己的类,可以通过自己的接口单独测试。(3)策略模式封装了变化,适用于需要在不同时间应用不用业务规则的情况。封装算法使得你可以独立于抽象类改变它,使得它易于切换、易于理解、易于扩展。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics