结合项目实例 回顾传统设计模式(一)策略模式
2011-09-09 10:21
543 查看
虫子以前在一家电商公司 会员的模块在这里分类很明确
不同的会员所具有的权限和行为不同,大多程序员会使用标准的oo技术,设计一个会员超类SuperUser,并让各种商家会员继承此超类
到这里无可厚非,但是在下面个过程中你可以就慢慢体会策略模式与你在代码里不停写逻辑判断所带来的区别有多大
所有的会员都具有下列行为
购物,评价,发布商品
View Code
public void setdiscountBehavior(discountBehavior dh)
{
dcbehavior = dh;
}
这样就可以“随时”调用这个方法 改变会员的行为
总结:
策略模式:针对接口编程,而不是针对实现编程。多用组合少用继承。策略模式定义了算法簇,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。
不同的会员所具有的权限和行为不同,大多程序员会使用标准的oo技术,设计一个会员超类SuperUser,并让各种商家会员继承此超类
到这里无可厚非,但是在下面个过程中你可以就慢慢体会策略模式与你在代码里不停写逻辑判断所带来的区别有多大
所有的会员都具有下列行为
购物,评价,发布商品
View Code
public void setdiscountBehavior(discountBehavior dh)
{
dcbehavior = dh;
}
这样就可以“随时”调用这个方法 改变会员的行为
总结:
策略模式:针对接口编程,而不是针对实现编程。多用组合少用继承。策略模式定义了算法簇,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。
相关文章推荐
- 结合项目实例 回顾传统设计模式(一)策略模式
- 结合项目实例 回顾传统设计模式(八)模板方法模式
- 结合项目实例 回顾传统设计模式(三)装饰者模式
- 结合项目实例 回顾传统设计模式(二)观察者模式
- 结合项目实例 回顾传统设计模式(三)装饰者模式
- 结合项目实例 回顾传统设计模式(四)工厂模式(简单工厂、普通工厂、抽象工厂)
- 结合项目实例 回顾传统设计模式(四)工厂模式(简单工厂、普通工厂、抽象工厂)
- 结合项目实例 回顾传统设计模式(九)迭代器模式
- 结合项目实例 回顾传统设计模式(十一)代理模式
- 结合项目实例 回顾传统设计模式(五)单例模式
- 结合项目实例 回顾传统设计模式(五)单例模式
- 结合项目实例 回顾传统设计模式 打造属于自己的模式类
- 结合项目实例 回顾传统设计模式(六)命令模式
- 结合项目实例 回顾传统设计模式(六)命令模式
- 结合项目实例 回顾传统设计模式(七)适配器模式(附外观模式)
- 结合项目实例 回顾传统设计模式(八)模板方法模式
- 结合项目实例 回顾传统设计模式(七)适配器模式(附外观模式)
- 【系列索引】结合项目实例 回顾传统设计模式 打造属于自己的模式类系列
- 结合项目实例 回顾传统设计模式(九)迭代器模式
- 结合项目实例 回顾传统设计模式(十)状态模式