




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
DesignPatterns,职责链模式,刘伟(Sunny)weiliu_china,大纲,行为型模式职责链模式概述职责链模式的结构与实现职责链模式的应用实例纯与不纯的职责链模式职责链模式的优缺点与适用环境,行为型模式,行为型模式(BehavioralPattern)关注系统中对象之间的交互,研究系统在运行时对象之间的相互通信与协作,进一步明确对象的职责行为型模式:不仅仅关注类和对象本身,还重点关注它们之间的相互作用和职责划分,行为型模式,类行为型模式使用继承关系在几个类之间分配行为,主要通过多态等方式来分配父类与子类的职责对象行为型模式使用对象的关联关系来分配行为,主要通过对象关联等方式来分配两个或多个类的职责,行为型模式,行为型模式一览表,职责链模式概述,奖学金审批示意图,职责链模式概述,分析辅导员、系主任、院长、校长都可以处理奖学金申请表,他们构成一个处理申请表的链式结构,申请表沿着这条链进行传递,这条链就称为职责链职责链可以是一条直线、一个环或者一个树形结构,最常见的职责链是直线型,即沿着一条单向的链来传递请求,职责链模式概述,职责链模式的定义对象行为型模式,职责链模式概述,职责链模式的定义又称为责任链模式(翻译不同,)将请求的处理者组织成一条链,并让请求沿着链传递,由链上的处理者对请求进行相应的处理客户端无须关心请求的处理细节以及请求的传递,只需将请求发送到链上,将请求的发送者和请求的处理者解耦,职责链模式的结构与实现,职责链模式的结构,职责链模式的结构与实现,职责链模式的结构职责链模式包含以下两个角色:Handler(抽象处理者)ConcreteHandler(具体处理者),职责链模式的结构与实现,职责链模式的实现典型的抽象处理者代码:,职责链模式的结构与实现,职责链模式的实现典型的具体处理者代码:,职责链模式的结构与实现,职责链模式的实现典型的客户端代码:,职责链模式的应用实例,实例说明,职责链模式的应用实例,实例类图,采购单分级审批结构图,职责链模式的应用实例,实例代码(1)PurchaseRequest:采购单类,充当请求类(2)Approver:审批者类,充当抽象处理者(3)Director:主任类,充当具体处理者(4)VicePresident:副董事长类,充当具体处理者(5)President:董事长类,充当具体处理者(6)Congress:董事会类,充当具体处理者(7)Program:客户端测试类,演示,参考代码(DesignPatternCoRSample),职责链模式的应用实例,结果及分析增加一个经理(Manager)角色,客户端代码修改如下,纯与不纯的职责链模式,纯的职责链模式一个具体处理者对象只能在两个行为中选择一个:要么承担全部责任,要么将责任推给下家不允许出现某一个具体处理者对象在承担了一部分或全部责任后又将责任向下传递的情况一个请求必须被某一个处理者对象所接收,不能出现某个请求未被任何一个处理者对象处理的情况,纯与不纯的职责链模式,不纯的职责链模式允许某个请求被一个具体处理者部分处理后向下传递,或者一个具体处理者处理完某请求后其后继处理者可以继续处理该请求一个请求可以最终不被任何处理者对象所接收并处理JavaScript的事件浮升(EventBubbling)处理机制,职责链模式的优缺点与适用场景,模式优点使得一个对象无须知道是其他哪一个对象处理其请求,降低了系统的耦合度可简化对象之间的相互连接给对象职责的分配带来更多的灵活性增加一个新的具体请求处理者时无须修改原有系统的代码,只需要在客户端重新建链即可,职责链模式的优缺点与适用场景,模式缺点不能保证请求一定会被处理对于比较长的职责链,系统性能将受到一定影响,在进行代码调试时不太方便如果建链不当,可能会造成循环调用,将导致系统陷入死循环,职责链模式的优缺点与适用场景,模式适用环境有多个对
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年新能源汽车技术与应用考试试卷及答案
- 2025年汽车驾驶员(高级)证考试题库及答案
- 阿坝藏族羌族自治州2025-2026学年七年级上学期语文月考模拟试卷
- 安徽省淮北市杜集区2023-2024学年高一下学期期末考试历史题库及答案
- 安徽省安庆市宿松县2024-2025学年高一下学期期末考试化学题库及答案
- 2025 年小升初哈尔滨市初一新生分班考试语文试卷(带答案解析)-(人教版)
- 2025年教师节感恩老师演讲稿13篇
- 社区消防知识培训课件要点
- 上海市上海师范大学附属金山前京中学2024-2025学年七年级下学期期中考试英语试题(含答案无听力音频及原文)
- 福建省龙岩市非一级达标校2024-2025学年高一上学期11月期中考试历史试卷(含答案)
- 住院病人防止走失课件
- 2024年重庆永川区招聘社区工作者后备人选笔试真题
- 医学技术专业讲解
- 2025年临床助理医师考试试题及答案
- 唯奋斗最青春+课件-2026届跨入高三第一课主题班会
- 2025民办中学教师劳务合同模板
- 2025年南康面试题目及答案
- 2025年事业单位考试贵州省毕节地区纳雍县《公共基础知识》考前冲刺试题含解析
- 高中喀斯特地貌说课课件
- 黄冈初一上数学试卷
- 2025年中国花盆人参行业市场发展前景及发展趋势与投资战略研究报告
评论
0/150
提交评论