1.详细功能
生成代理是一个介于生成调度和真正generate实现之间额外的附加层,目的是能够根据需要切换不同的实现,比如生成调度根据配置,需要通过远程来生成,那么就需要远程代理,远程访问的方式可能是rmi或webservice。
默认提供的是本地实现的方式。
2.功能边界
生成代理模块不关心谁要求真正执行,也不关心究竟谁来真正执行,它只是根据配置和客户端的选择,来代理找到具体执行功能的对象,并启动具体执行generate功能的对象。
3.对外接口
事实上,代理模块对外是没有自己的接口的,它实现的是被代理的对象的接口,也就是生成调用的接口。
4.内部实现
4.1 代理模式
4.1.1 面临的问题
由于要在分发调度模块和具体生成模块之间引入一个间接性,以备在需要的时候,可以让相同的分发调度模块调用不同的具体生成模块,而且要考虑到可能需要访问远程的功能。
简单点说,就是需要一种访问代理,该如何实现呢?
4.1.2 用代理模式来解决
为其它对象提供一种代理以控制对这个对象的访问。