代理模式
设计模式之代理模式(Proxy)
代理模式我也只是一知半解,从网上浏览一下,总结下来就是
新建一个中间代理,使用者通过中间代理去调用实际需要调用的类。
A->B(proxy)->C
这样做的好处是
- A不需要和C直接接触,所以C的初始化,或者参数配置可由B完成。
- 若C的初始化需要大量的时间,A->B能快速初始化实例,而不需要等待C生成。虽然到时候真正操作也是要初始化C,但是加快了启动的速度。就像网页预加载一样,先快速呈现给用户,然后等用户真正去点击具体功能才去加载(雾)。
- 如果去掉B,那系统中有些功能可能不会用到C,但是我们还是把它实例出来了,耗费来大量的时间。
- ........
动态代理:
最为经典的实例一个就是Hibernate的懒加载了吧。