定义
使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合度。
案例
比如现在有一个图形界面,它包括一个应用Application类,一个主窗口Window,一个按钮Button,Window和Button都是继承自Widget类,现在在Button上按滑动鼠标滚轮,Button类不一定要处理,可能是Window类处理,也可能是是Application类...
分类:
其他好文 时间:
2014-07-12 23:29:27
阅读次数:
264
设计模式之职责链模式(Chain of Responsibility)摘录!...
分类:
其他好文 时间:
2014-07-08 20:42:06
阅读次数:
365
纵观机房收费系统,逻辑最复杂的也就是下机操作了,这几天一直在考虑下机操作该如何进行。
流程分析:
判断卡号是否存在与是否上机
上机时间的处理
根据时间计算消费金额
更新余额,添加记录
关于逻辑的操作主要集中在两个计算上面。首先说上机时间的处理问题,做之前我看了下第一版机房收费系统关于下机的操作:...
分类:
其他好文 时间:
2014-07-06 11:00:34
阅读次数:
243
职责链,一旦范获类GetALinkExact取不到激活地址,就提交给精确类GetALinkCommon获取类处理,如果以后需要添加处理,只需要添加上级即可,不需要修改原来的类觉得我一定有理解得不对的地方,望高手斧正,如果有不详细的地方也可以指出
分类:
其他好文 时间:
2014-06-27 22:42:44
阅读次数:
235
#include"stdafx.h"#includeusingnamespacestd;classProgrammer{protected:Programmer*next;public:voidSetNext(Programmer*programmer){next=programmer;}virtu...
分类:
编程语言 时间:
2014-06-26 16:08:31
阅读次数:
228
一. 概述
职责链模式:
使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。
二. 举个例子
员工要求加薪
公司的管理者一共有三级:总经理、总监、经理,如果一个员工要求加薪,应该向主管的经理申请,如果加薪的数量在经理的职权内,那么经理可以直接批准,否则将申请上交给总监。总...
分类:
编程语言 时间:
2014-06-22 14:46:52
阅读次数:
300
职责链(Chain of Responsibility)模式:使多个对象都有机会处理请求,从而避免请求发送者呵接受者之间的耦合关系。将这个对象连成一条链子,并沿着这条链传递该请求,知道有一个对象处理它。 /* * 抽象处理者(Handler)角色:定义出一个处理请求的接口。如果需要,接口可以...
分类:
其他好文 时间:
2014-06-17 14:20:55
阅读次数:
142
定义 避免把一个请求的发送者和接收者耦合在一起,使多个对象都有机会处理请求。将这个请求的多个接收着连接成一条链,并让请求沿着这个链传递下去,只到有一个结点能处理请求。 职责链模式中,链形成后,不一定非要有一个结点能够处理请求,也就是说,所有结点都可以处理一下再往下传,也可以都不处理,这样说来就比.....
分类:
其他好文 时间:
2014-06-17 12:53:06
阅读次数:
319
//职责链模式:使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止.//实例:申请费用的功能,不同金额的费用须要由不同的上级部分审核通过,假设下级没有审核的权限那么就让上级来进行审核//上代码//定义职责对象...
分类:
其他好文 时间:
2014-06-15 15:48:11
阅读次数:
121
有句话叫做no zuo no die,我大概就是这种人吧。why?做机房收费系统的时候,按照一般方法也能实现,但这次做上下机的时候,感觉这么做没有什么好玩儿的了,然后就停下来,重新想想上下机还能怎么做?
后来,大致采用的思路是这样的:将上下机的读写数据的过程写成两个存储过程,负责读取和更改数据。中间的计算过程写在代码里面:中间判断时间的过程用职责链模式来实现,判断一般用户...
分类:
其他好文 时间:
2014-06-14 14:38:15
阅读次数:
277