设计模式之代理模式

代理模式

代理模式

  • 场景
    • 对于客户端不想或者是不能直接引用一个对象,需要引进一个代理
  • 代理大致种类
    • 虚拟代理
      • 将一个大的对象,先用一个小对象代替,具体使用时在生成,减小系统消耗
    • 远程代理
      • 对于不同地址空间提供个局域代理对象,就像是在对统一地址空间操作
    • 保护代理
      • 权限保护
  • 角色
    • 接口Subject
    • 代理Proxy(实现Sunject)
    • 具体实现类(SubjectImpl)
  • 优点
    • 协调调用者与被调用者,降低系统耦合度
  • 缺点
    • 因为有代理,可能会降低系统的性能
    • 代理实现可能会比较复杂(特别低是动态代理)