09-代理模式

代理模式 #

在某些应用中我们想要访问一个或者多个重要的操作,有时会进行一些敏感操作,在允许用户进行这些敏感操作的之前,我们希望确保用户具备足够的权限,操作系统也存在这样的情况,如在执行某些操作的时候必须有管理员权限才可以进行。

常见的知名代理模式 #

  • 远程代理:实际存在于不同地址空间的对象在本地的代理
  • 虚拟代理:用于懒初始化,将一个大计算量对象的创建延迟到真正需要的时候
  • 保护/防护代理:控制对敏感对象的访问
  • 智能(引用)代理:在对象被访问时执行额外的动作,此类代理的例子包括引用计数和线程安全检查。

虚拟代理,代码示例https://github.com/lanms/Python_design_pattern/blob/master/09-proxy_pattern/09-1-Lazy.py

代理模式代码 https://github.com/lanms/Python_design_pattern/blob/master/09-proxy_pattern/09-2-proxy.py