策略模式—笔记

  使用场景 : 当某个问题有多个解决方案时,最简单的方法使用时if-else或者switch case ,但这种方式耦合性太高 , 代码臃肿 ,当需要增加一种方案时就需要修改类中的代码,‘

怎么才能对修改关闭 ,对扩展开放 。可以使用策略模式

策略模式—笔记_第1张图片

图片来源于http://www.cnblogs.com/furenjun/archive/2008/12/28/designpatterns3.html

策略模式主要用于分离算法,在相同的行为抽象下有不同的具体实现策略。这种模式很好地演示了开闭原则,也就是定义抽象,注入不同的实现,从而达到很好的课扩展性。

优点 : 结构清晰明了 ,使用简单直观;

耦合度相对较低,扩展方便。

操作封装也更为彻底,数据更为安全。

缺点:随着策略的增加,子类也会变得繁多。

你可能感兴趣的:(策略模式—笔记)