今天看了《大话设计模式》中代理模式一节,感觉应用那部分写的不详细,遂查了几篇代理模式应用的文章,总结一下,加深理解。文中可能有较多的错误,欢迎斧正。
代理模式的应用场景:
1、一个对象,比如很大的一张图像,加载前可以用一个占位的图像来替代。
2、一个过程计算需要等待很长时间,并且需要再计算过程中展示结果。
3、一个存在于远程的对象,通过网络载入需要较长的时间,
4、验证用户对对象的访问权限。
概括:
代理模式有点装饰器的意思,可以再原有类的基础上做些装饰,这些装饰放到原有类可能内聚性不太好,所以放到Proxy比较合适。
可以控制对象的生成,比如单例模式。
参考: