策略(Strategy)模式
2013-03-27 20:26
239 查看
面向对象编程,并不是类越多越好,类的划分是为了封装,但分类的基础是抽象,具有相同属性和功能的对象的抽象集合才是类
我们在Martin编写的《代码整洁之道》中对类的看法,类应该短小(长度不应该容纳一个if嵌套语句,20行封顶),而且只做一件事,做好这件事。强调的是简洁和优雅,但是不没说类越多越好。
这里我们可以明白我们应该用什么态度来看待和创建类,对我们的工程很重要。
策略模式的定义:
ViewCodeclassCashContext
{
privateCashSupercs;
publicvoidsetBehavior(stringclassName,object[]args)
{
this.cs=(CashSuper)Assembly.Load("商场管理软件").CreateInstance("商场管理软件."+className,false,BindingFlags.Default,null,args,null,null);
}
publicdoubleGetResult(doublemoney)
{
returncs.acceptCash(money);
}
}
到此为止我们使用简单工厂策略模式+反射实现了一种数据驱动的方式实现了代码0修改。
数据驱动是我们常用的一种设计方案,这是一种伟大的进步,从数据驱动直到今天的脚本游戏引擎比如说unity3d............扯远了....下一篇来吧....................................
相关文章推荐
- Java设计模式透析之 —— 策略(Strategy)
- (转载)设计模式之-策略模式(Strategy)
- 设计模式1--策略模式(the strategy design pattern)
- 03、人人都会设计模式:策略模式--Strategy
- Strategy 策略模式
- 设计模式随笔--策略模式Strategy
- 策略模式,Strategy
- 来说说(Strategy)策略模式
- 设计模式之Strategy(策略)
- 设计模式之Strategy(策略)
- 设计模式之C++实现(二)---策略模式(Strategy)
- 操作型模式之Strategy(策略)模式
- 设计模式之策略(Strategy)模式
- Strategy 策略模式
- 策略模式(Strategy)
- 16.策略模式--Strategy
- 鸭子-策略模式(Strategy)
- 设计模式--策略模式Strategy
- 设计模式之七:Strategy(策略)—对象行为型模式
- php设计模式 Strategy(策略模式)