【设计模式系列学习笔记】7、代理模式 - proxy pattern

代理模式核心作用:

通过代理,控制对象的访问;可以详细控制访问某个对象的方法,在调用方法前做前置处理,调用方法后做后置处理;

代理模式的应用:

  • 远程代理,为一个对象在不同的地址空间提供局部代表;这样可以隐藏一个对象存在于不同地址空间的事实;
  • 虚拟代理,根据需要创建开销很大的对象,通过虚拟代理来存放实例化需要很长时间的真实对象;如浏览器加载图片时通过虚拟代理来替代了真实的图片,此时代理存储了真实图片的路径和尺寸;
  • 安全代理,用来控制真实对象访问的权限;
  • 智能指引,当调用真实对象时,代理处理另外一些事;

核心角色:

  • 抽象角色:定义代理/真实角色公共对外方法;
  • 真实角色:关注真正的业务逻辑;
  • 代理角色:将统一的流程控制放到代理角色中处理;

静态代理:

代码详见

com.transformer.proxy.staticproxy

https://git.lug.ustc.edu.cn/hellboy0621/transformer_gof23.git

猜你喜欢

转载自blog.csdn.net/hellboy0621/article/details/100110808
今日推荐