策略模式
定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。
设计原则
多用组合,少用继承。“有一个”比“是一个”更好。
理解要点
类的行为同样可以封装成类。 例如不同的鸭子有不同的展示行为、鸣叫行为和飞行行为。它们的展示行为各不相同,鸣叫和飞行则有可能相同。若使用接口和继承,将导致层级混乱,不易扩展。
定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。
多用组合,少用继承。“有一个”比“是一个”更好。
类的行为同样可以封装成类。 例如不同的鸭子有不同的展示行为、鸣叫行为和飞行行为。它们的展示行为各不相同,鸣叫和飞行则有可能相同。若使用接口和继承,将导致层级混乱,不易扩展。
0 Comments
Leave a comment