1.代理模式
代理模式的定义是:为一个对象提供一个代用品和占位符,以便控制对它的访问
2.常见的情景
明星的商业演出请求,首先寻找到经纪人,经纪人做了一些处理,再由经纪人向明
星来转交请求。
3.保护代理和虚拟代理的概念
保护代理:对象B帮助A过滤了一些请求,不好的请求,在代理B这里直接处理掉。
对A形成了保护
虚拟代理:把一些开销大的对象,延迟到真正需要它的时候才去创建。
4.代理的意义
将职责进行分离,遵从了单一职责原则。
遵从开闭原则,如果不需要代理上的额外功能,可以将请求从代理对象上转移到
对本体进行请求,这样不用修改原来的代码。
5.缓存代理
缓存代理可以为一些开销大的运算结果提供暂时的存储,在下次运算时,如果传递
进来的参数跟之前一致,则可以直接返回前面存储的运算结果
6.其他的代理
防火墙代理:控制网络资源资源的访问,保护主题不让'坏人'接近
远程代理:为一个对象在不同的地址空间提供局部的代表,在Java中,远程代理
可以是另一个虚拟机中的对象
智能引用代理:取代了简单的指针,它在访问对象时执行一些附加操作,比如计算
一个对象被引用的次数。
7.代理模式优缺点
优点:代理模式可以协调客户和本体,一定程度上降低了系统的耦合度
缺点:1.增加了代理对象,因此有些代理模式可能会降低请求处理速度
2.实现代理模式增加了额外的工作,有些代理模式的实现比较复杂
8.代理模式的小结
1.代理模式有许多变体,比如保护代理、虚拟代理、、、
2.在JS中最常用的是虚拟代理和缓存代理
代理模式
最新推荐文章于 2024-08-25 10:50:01 发布