设计模式课件-10-代理模式.pptVIP

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
设计模式课件-10-代理模式

小结 代理模式的优点在于能够协调调用者和被调用者,在一定程度上降低了系统的耦合度;其缺点在于由于在客户端和真实主题之间增加了代理对象,因此有些类型的代理模式可能会造成请求的处理速度变慢,并且实现代理模式需要额外的工作,有些代理模式的实现非常复杂。 远程代理为一个位于不同的地址空间的对象提供一个本地的代表对象,它使得客户端可以访问在远程机器上的对象,远程机器可能具有更好的计算性能与处理速度,可以快速响应并处理客户端请求。 小结 如果需要创建一个资源消耗较大的对象,先创建一个消耗相对较小的对象来表示,真实对象只在需要时才会被真正创建,这个小对象称为虚拟代理。虚拟代理通过使用一个小对象来代表一个大对象,可以减少系统资源的消耗,对系统进行优化并提高运行速度。 保护代理可以控制对一个对象的访问,可以给不同的用户提供不同级别的使用权限。 1:抽象主题角色.声明了代理主题和真实主题的公共接口,使任何需要真实主题的地方都能用代理主题代替. 2:代理主题角色.含有真实主题的引用,从而可以在任何时候操作真实主题,代理主题功过提供和真实主题相同的接口,使它可以随时代替真实主题.代理主题通过持有真实主题的引用,不但可以控制真实主题的创建或删除,可以在真实主题被调用前进行拦截,或在调用后进行某些操作. 3:真实代理对象.定义了代理角色所代表的具体对象. * 任课教师:张伟芝 zhangweizhi@eud2act.org 任课教师:张伟芝 zhangweizhi@eud2act.org 任课教师:张伟芝 zhangweizhi@eud2act.org 任课教师:张伟芝 zhangweizhi@eud2act.org 任课教师:张伟芝 zhangweizhi@eud2act.org 任课教师:张伟芝 zhangweizhi@eud2act.org 任课教师:张伟芝 zhangweizhi@eud2act.org 任课教师:张伟芝 zhangweizhi@eud2act.org THU SAGroup 任课教师:张伟芝 zhangweizhi@eud2act.org THU SAGroup 第十章 代理模式 上节回顾 课程内容 环境和问题 代理模式详解 代理模式实现 扩展话题 课程内容 环境和问题 代理模式详解 代理模式实现 扩展话题 日常生活中的代理 代理签证 服装代理商 代理服务器 代理模式动机 一个客户不想或者不能直接引用另一个对象,此时可以通过一个称之为“代理”的第三者来实现间接引用。 代理对象可以在客户端和目标对象之间起到中介的作用。 可以通过代理对象去掉客户不能看到的内容和服务或者添加客户需要的额外服务。 代理模式动机 代理模式动机 课程内容 环境和问题 代理模式详解 代理模式实现 扩展话题 代理模式定义 给某一对象提供一个代理,并由代理对象控制对原对象的引用。 代理模式英文名称 Proxy Pattern Surrogate Pattern 代理模式结构 抽象主题 代理主题 真实主题 代理模式结构 代理模式示意结构图比较简单,一般可以简化为如下图所示: 代理模式调用顺序示意图 课程内容 环境和问题 代理模式详解 代理模式实现 扩展话题 代理模式案例 图片延迟加载 我们打算建立一个应用程序,用来展示图片,由于图片像素非常大,加载可能需要一些时间,所以在等待加载图像的时候,应该显示一些提示,比如“图片加载中,请稍候……”,一旦加载完成,则显示图片。 代理模式案例 红酒代理商 一个红酒厂商,是不会直接把红酒零售客户的,都是通过代理来完成他的销售业务的.而客户,也不用为了喝红酒而到处找工厂,他只要找到厂商在当地的代理就行了,具体红酒工厂在那里,客户不用关心,代理会帮他处理. 课程内容 环境和问题 代理模式详解 代理模式实现 扩展话题 代理模式与适配器模式 代理模式与适配器模式 相似性 都为一个对象提供间接性访问 都是从自身以外的一个接口向对象转发请求 不同性 适配器模式面对不同接口 代理模式面对相同接口 代理模式变体 远程(Remote)代理:为一个位于不同的地址空间的对象提供一个本地的代表对象,这个不同的地址空间可以是在同一台主机中,也可是在另一台主机中,远程代理又叫做大使(Ambassador)。 虚拟(Virtual)代理:如果需要创建一个资源消耗较大的对象,先创建一个消耗相对较小的对象来表示,真实对象只在需要时才会被真正创建。 Copy-on-Write代理:它是虚拟代理的一种,把复制(克隆)操作延迟到只有在客户端真正需要时才执行。一般来说,对象的深克隆是一个开销较大的操作,Copy-on-Write代理可以让这个操作延迟,只有对象被用到的时候才被克隆。 代理模式变体 保护(Protect or Access)代理:控制对

文档评论(0)

baoyue + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档