zoukankan      html  css  js  c++  java
  • 十、设计模式之代理(Proxy)模式

    什么是代理模式

    代理模式是对象的结构模式,为其他对象提供一种对象以控制对这个对象的访问。

    代理模式的结构图如下:(源自大话设计模式)

    image

     

    Subject:定义了RealSubject和Proxy的公共接口,这样在任何使用RealSubject的地方都可以使用Proxy

    代理模式就是在代理类中持有RealSubject的对象句柄,这样调用接口时,都执行RealSubject的对应方法,以达到封装内部控制对象的目的并起到代理的作用。

    代理模式的应用

    第一种是远程代理,也就是为一个对象在不同的地址空间(跨机器)提供局部代表,这样可以隐藏一个对象存在于不同地址空间的事实。

    第二种是虚拟代理,是根据需要创建开销更大的对象,通过它来存放实例化需要很长时间的真实对象。 比如打开网页是的图片一步加载,加载之前网页中预留的图片的白框就是图片的代理。

    第三种是安全代理,用来控制真实对象访问时的权限,一般用于对象应该有不同的访问权限的时候。

    第四种是智能指针,他是真实对象的一种代理。

  • 相关阅读:
    NSRunloop-基本概念
    GCD—NSThread-多线程的基本用法
    NSURLConnection-网络访问(同步异步)
    ASIHttpRequest网络使用框架
    XML与JSON解析
    iOS 设置系统音量和监听系统音量变化
    iOS_字典数组 按key分组和排序
    iOS 自定义字体设置
    日期选择和输入弹框
    iOS 耳机线控
  • 原文地址:https://www.cnblogs.com/lovemdx/p/3338046.html
Copyright © 2011-2022 走看看