X-gen设计模式综合实战4-生成代理模块

1.详细功能

生成代理是一个介于生成调度和真正generate实现之间额外的附加层,目的是能够根据需要切换不同的实现,比如生成调度根据配置,需要通过远程来生成,那么就需要远程代理,远程访问的方式可能是rmi或webservice。
默认提供的是本地实现的方式。

2.功能边界

生成代理模块不关心谁要求真正执行,也不关心究竟谁来真正执行,它只是根据配置和客户端的选择,来代理找到具体执行功能的对象,并启动具体执行generate功能的对象。

3.对外接口

事实上,代理模块对外是没有自己的接口的,它实现的是被代理的对象的接口,也就是生成调用的接口。

4.内部实现

4.1 代理模式

4.1.1 面临的问题

由于要在分发调度模块和具体生成模块之间引入一个间接性,以备在需要的时候,可以让相同的分发调度模块调用不同的具体生成模块,而且要考虑到可能需要访问远程的功能。

简单点说,就是需要一种访问代理,该如何实现呢?

4.1.2 用代理模式来解决

为其它对象提供一种代理以控制对这个对象的访问。


4.1.3 此时生成代理模块的结构示意如图

参考

  • 1)《设计模式综合项目实战》——跟着cc学设计系列

你可能感兴趣的:(X-gen设计模式综合实战4-生成代理模块)