代理设计模式

  • 什么是代理模式.

    • 传入的对象,代替当前类完成了某个功能,称为代理模式.

利用协议实现代理模式的主要思路

  • 定义1个协议.里面声明代理类需要实现的方法列表. 比如这里的1个代理类需要实现载人的方法.

    • 创建1个代理类 遵守上面的代理协议 并实现方法

      • 在需要代理的类中,定义1个对象属性 类型为id 且遵守代理协议的属性.
      • 在代理的类中,调用代理对象的方法.

      代理模式:

      • 有1个对象中有1个属性, 这个属性的可以是任意的对象,但是这个对象必须具有指定的行为.
      • 这个时候就可以使用协议.

        • 将行为定义在代理之中.
        • 对象的属性的类型 id<协议>
          • 只要遵守了这个协议的对象都可以作为这个类的代理.

代理设计模式的场合

  • 当对象A发生了一些事情,想告知对象B 让对象B称为对象A的代理.
  • 对象B想监听对象A的一些行为. 让B称为A的代理,
  • 当对象A无法处理某些场景的时候,想让对象B帮忙处理.

代理设计模式的应用场景

重点内容
A对象有1个属性是B对象 要求B对象必须有指定的方法 因为我会调用.

你可能感兴趣的:(设计模式)