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

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

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

 

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

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

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

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

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

 

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

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

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

 命令模式类图:

设计模式 —— 命令模式(Command Pattern)

命令模式(Command Pattern)概念: 概述:在软件设计中,我们经常会遇到某些对象发送请求,然后某些对象接受请求后执行,但发送请求的对象可能并不知道接受请求的对象是谁,执行的是什么动作。...
  • wwh578867817
  • wwh578867817
  • 2016年05月29日 18:34
  • 1251

iOS设计模式(九) 命令模式

可以把一系列动作封装成一个命令,在用户不需要知道其实现细节,使用细节的情况下就可以调用。 一般在想让应用程序支持撤销与恢复的情况下使用这一模式。 在OC中NSInvocation和NSUndoMa...
  • a2331046
  • a2331046
  • 2016年07月11日 14:43
  • 274

设计模式(行为型)之命令模式(Command Pattern)

在软件开发中,我们经常需要向某些对象发送请求(调用其中的某个或某些方法),但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个,此时,我们特别希望能够以一种松耦合的方式来设计软件,使得请求发送者与...
  • yanbober
  • yanbober
  • 2015年05月05日 11:49
  • 3168

设计模式之命令模式---Command Pattern

模式的定义命令模式是一个高内聚的模式,定义如下:Encapsulate a request as an object,thereby letting you parameterize clients ...
  • hfreeman2008
  • hfreeman2008
  • 2016年08月06日 10:37
  • 1585

iOS 设计模式 - 命令模式

在软件系统中,“行为请求者”与“行为实现者”通常呈现一种“紧耦合”。但在某些场合,比如要对行为进行“记录、撤销/重做、事务”等处理,这种无法抵御变化的紧耦合是不合适的。在这种情况下,如何将“行为请求者...
  • Seal_Shile
  • Seal_Shile
  • 2016年02月25日 23:02
  • 460

Java开发中的23种设计模式详解----命令模式(Command)

命令模式很好理解,举个例子,司令员下令让士兵去干件事情,从整个事情的角度来考虑,司令员的作用是,发出口令,口令经过传递,传到了士兵耳朵里,士兵去执行。这个过程好在,三者相互解耦,任何一方都不用去依赖其...
  • sjyttkl
  • sjyttkl
  • 2017年06月21日 12:23
  • 940

Java设计模式之命令模式

继续23种设计模式系列,本文介绍命令模式。
  • jason0539
  • jason0539
  • 2015年04月19日 08:31
  • 21638

Tomcat中的设计模式--命令模式

命令设计模式       前面把 Tomcat 中两个核心组件 Connector 和 Container,比作一对夫妻。男的将接受过来的请求以命令的方式交给女主人。对应到 Connector ...
  • ZuoAnYinXiang
  • ZuoAnYinXiang
  • 2016年01月04日 17:15
  • 656

大话设计模式-----(九)桥接模式、命令模式

桥接模式将抽象部分与他的实现部分分离,使他们都可以独立地变化实现指的是抽象类和他的派生类用来实现自己的对象就像不同牌子的手机,会有不同的功能,要是抽象手机,然后逐个添加功能,很多功能大家都有,但也有一...
  • qq_28295425
  • qq_28295425
  • 2017年04月03日 10:46
  • 375

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

Command模式是最让我疑惑的一个模式,我在阅读了很多代码后,才感觉隐约掌握其大概原理,我认为理解设计模式最主要是掌握起原理构造,这样才对自己实际编程有指导作用.Command模式实际上不是个很具体...
  • moiyer
  • moiyer
  • 2011年08月08日 15:20
  • 313
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:十六、设计模式 之 命令模式
举报原因:
原因补充:

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