策略模式

OO基础:

抽象、封装、继承、多态

知道抽象、封装、继承、多态这些概念,并不会马上让你变成好的面向对象设计者,好的设计师关心的是建立弹性的设计,可以维护,可以应付变化。

OO原则:

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

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

多用组合,少用继承。

策略模式:

策略模式定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。

例:

把每组行为想象成一个算法族,

客户使用封装好的飞行和呱呱叫算法族。

“我们使用策略模式实现鸭子的各种行为。”这句话也就是告诉我们,鸭子的行为被封装进入一组类中,可以被轻易的扩充与改变,如果需要,甚至可以在运行时可以改变行为。

原文地址:https://www.cnblogs.com/VicLily/p/8870237.html