设计模式(一)Strategy - 策略模式

来源:互联网 发布:tk免费域名 编辑:程序博客网 时间:2024/05/08 00:28

HeadFirst设计模式(中文版)--68折,当当价:¥66.80http://t.cn/zjzWUNh

Strategy - 策略模式

策略模式针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。策略模式把行为和环境分开。环境类负责维持和查询行为类,各种算法在具体的策略类中提供。由于算法和环境独立开来,算法的增减,修改都不会影响到环境和客户端。


不管当初软件设计得多好,一段时间之后,总是需要成长与改变,否则软件就会“死亡”。

设计原则(01):

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

设计原则(02):

针对接口编程,而不是针对实现编程。

鸭子的子类将使用接口(FlyBehavior与QuackBehavior)所表示的行为,所以实际的“实现”不会被绑死在鸭子的子类中。

原创粉丝点击