代理设计模式
问题描述:
实现我看在维基百科网站的代理模式:http://en.wikipedia.org/wiki/Proxy_pattern
我明白在一个计算机程序。
但我问我有关在2台电脑实现的问题。
在现实生活中,我想:
1)在客户端(计算机A)和服务器(计算机B)=>我是对吗?
2)类的代理的目的是在客户端(计算机A)
3)CLASSE RealSubject的目的是在服务器类代理的构造(计算机B)
4),RealSubject的一个实例是创建=>我是对的?
在第4点,如果我是正确的,如何在电脑A中实例化一个类,它位于计算机B中?
例如,如果B类是Web服务,你该如何做?
我提前感谢你。
代理设计模式
答
1)在客户端(计算机A)和服务器(计算机B)=>我是对吗? 是的,几乎总是。
2)类的代理的目的是在客户端(计算机A) 是
3)类RealSubject的目的是在服务器(计算机B) 是
4)在类Proxy的构造函数中,RealSubject的一个实例被创建=>我对吗? 在构造函数中或通过任何其他方式,也许RealSubject已经创建 并且您所要做的就是获取对它的引用。
“代理可以在不改变对象代码的情况下为感兴趣的对象添加附加功能。”从维基百科。
对于调用Web服务,您可以简单地拥有一个Web服务代理,它将封装对WS的调用。
喜欢的东西:
class WebServiceProxy {
private WebService ws;
public doWSAction() {
// Here you make the call to the actual web service: setup parameters, check security etc, whatever you need .
...
// then you call the actual web service:
ws.doWSAction()
}
}
因此,有人谁需要网络服务将只使用本地类,而不必做所有 与你在你的方法是做呼叫的事情。
MulţumescMatei。 – Thomas 2014-10-30 12:44:35
MulţumescMatei。非常感谢Matei花时间回答我的问题并点亮我的大脑。 – Thomas 2014-10-30 12:45:42
Matei,我想标记这个答案是有用的。但是我的名声在15岁以下,因此我没有权利将答案标记为有用。 – Thomas 2014-10-30 12:54:40