《设计模式Design Pattern》读书笔记之十一
Proxy模式
结构
目的
当访问一个对象花费比较大的时候,可以为它生成一个代理(proxy)。
应用
remote proxy 远程代理,用本地的一个对象代理远程对象
virtual proxy 虚拟代理,只有在需要的时候(on demand)才生成一个代价昂贵的对象
protection proxy 保护代理,控制对对象的访问权限
smart reference 职能指针
与其它模式的区别
1, 与Adapter的区别:Adapter为目标对象生成一个不同的接口以满足用户的需要;相反地,Proxy与它的目标对象的接口是完全一样的。当然,在保护代理中,Proxy的接口可以是它的目标对象的接口的一个子集,从而对那些无权访问的接口不进行反应。
2, 与Decorator的区别:尽管在实现上Proxy和Decorator很相似,但是它们的目的是不一样的;Decorator的目的是为一个对象增加功能,而Proxy的目的是控制对对象的访问。
参考资料
《Design Pattern》 Gang-Of-4 1997