十六、设计模式 之 命令模式

原创 2012年03月31日 14:01:05

道具系统作为一个底层平台,要以统一的模型支持日后对会员提供的所有让利优惠活动--比如特权、卡片、徽章等等。除了要支持各式各样的让利优惠活动外,还要求系统具有高度灵活性易扩展,同时因为这些让利优惠活动要贯穿在交易的过程中,所以要求系统高度稳定。

 

道具的生命周期包括道具发布、上架、领取、激活、使用、停用、下架。为系统易用必将提供后台的页面配置功能,也会将这些清晰独立的生命周期中的过程抽象成行为操作。

那为什么采用命令模式的思想呢?

1。道具系统要记录道具的领取、使用过程,甚至有些行为要做到可撤销、可重做、可组合----这就要求能够将行为的调用者和执行者分割开破除两者之间的紧耦合。

2。新的行为可以容易地加入到道具系统中,也可容易的去掉不必要的行为。

3。道具系统需要在不同的时间指定请求、将请求排队和执行请求。

 

命令模式的哪些设计思想为道具系统提供良好的借鉴指导意义呢?

1。命令模式使请求本身成为一个对象,这个对象和其他对象一样可以被存储和传递。

2。命令模式的关键在于引入了抽象命令接口,且发送者针对抽象命令接口编程,只有实现了抽象命令接口的具体命令才能与接收者相关联。

 命令模式类图:

设计模式之(十六)命令模式Command

Command模式是最让我疑惑的一个模式,我在阅读了很多代码后,才感觉隐约掌握其大概原理,我认为理解设计模式最主要是掌握起原理构造,这样才对自己实际编程有指导作用.Command模式实际上不是个很具体...
  • moiyer
  • moiyer
  • 2011年08月08日 15:20
  • 306

无废话C#设计模式之十六:State

无废话C#设计模式之十六:State 意图        允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。 场景        我们在制作一个网上书店的网站,用户在书店买了一定...
  • rise51
  • rise51
  • 2011年01月18日 16:18
  • 297

《Android源码设计模式解析与实战》读书笔记(十六)

第十六章、访问者模式 访问者模式是一种行为型模式,它是23种设计模式中最复杂的一个,虽然使用频率不高,但是并不代表可以忽略,在合适的地方,它会带来意想不到的灵活性。访问者模式,顾名思义使用了这个模...

十六、 中介者设计模式

1. 中介者设计模式介绍 用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显示地相互引用,从而使耦合松散,而且可以独立地改变它们之间的交互。 中介设计模式将对象之间多对多关系变成一对多的关系...

Android设计模式(十六)-中介者模式

中介者模式又叫调解者模式或调停者模式,是行为型设计模式之一。生活中的中介者的作用就是连接两方的一个桥梁,比如房产中介,买房的只需跟中介打交道,然后买房的也跟着中介打交道,喵了个呜的小宇宙没有中介的时候...

小话设计模式(十六)中介者模式

中介者(Mediator)模式用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显示地互相引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 以下情况适合使用中介者模式: 1、一组对象...

云计算设计模式(十六)——优先级队列模式

云计算设计模式(十六)——优先级队列模式 优先发送到服务,以便具有较高优先级的请求被接收和高于一个较低优先级的更快速地处理请求。这种模式是在应用程序是有用的,它提供不同的服务级别保证或者针对独立客户。...

设计模式(十六) 解释器模式

解释器模式是一种行为型模式,它的主要作用是用一种方式来实现对表达式或文法的处理。我们可以使用解释器模式处理语言的解析,在设计计算机语言的时候解释器模式很有用处。解释器模式可能需要用到一点编译原理的知识...

设计模式C++学习笔记之十六(Observer观察者模式)

16.1.解释 概念:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 main(), IObservable,被观察者接口 CHanF...

我与C++设计模式(十六)——memento模式

这个模式通常被翻译为备忘录模式,我并不是很欣赏这个翻译,b
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:十六、设计模式 之 命令模式
举报原因:
原因补充:

(最多只允许输入30个字)