您的位置:首页 > 其它

策略模式(Strategy Pattern)

2015-11-16 09:09 417 查看
设计原则

1、找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。

2、针对接口编程(实际上是针对超类编程),而不是针对实现编程。

3、多用组合,少用继承。

优点:1.利用组合、委托和多态等技术和思想,可以有效地避免多重条件选择语句

2、提供了对开放—封闭原则的完美支持,将算法封装在独立的strategy中,使得它们易于切换,易于理解,易于扩展

3、策略模式中的算法也可以复用在系统的其他地方,从而避免许多重复的复制粘贴工作。

4、在策略模式中利用组合和委托来让Context拥有执行算法的能力,这也是继承的一种更轻便的替代方案。

缺点:1.客户端必须知道所有的策略类,并自行决定使用哪一个策略类。

      2.造成很多的策略类。



详细请参考:http://www.cnblogs.com/mengdd/archive/2013/01/19/2867443.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: