C#面向对象设计模式第十三讲:Proxy 代理模式(结构型模式)
2011-12-29 17:43
302 查看
(根据MSDN Webcast 相关课程整理)
直接与间接: 对于复杂的系统,我们常常在使用时添加一个中间层,从而屏蔽一些不常用的功能,或简化一些常用功能等,从而达到用简单灵活的方法满足特定的需要的目的。 如:A访问B时,每访问一次B,就需要调用一次B对象,由于B对象的复杂性,调用开销较大,尤其是B处于分布式应用当中时。另一方面,直接调用复杂的对象,暴露了过多的A不需要的接口,造成不安全性。
加是中间层C以后,简化了B的接口与复杂性,使得A对C的访问简单灵活安全, A对资源的访问也不一定需要直接连接到B,从而无关分布式访问细节。
实例:最早的计算机操作员直接和底层硬件打交道,操作十分复杂;后果,人们设计了操作系统,将计算机底层硬件操作的复杂性于以屏蔽,并帮助我们自动管理了内存,CPU等资源,大大简化了操作的复杂性。
示例: 跨国公司人力管理系统中,员工信息存放在公司总部的服务器上,而运行于国外分部的HR系统如果如何处理这种情况呢?
接口屏蔽了部分功能。
代理类实现了接口功能,并采用SOAP方法调用了服务器上的对象。 《完》
直接与间接: 对于复杂的系统,我们常常在使用时添加一个中间层,从而屏蔽一些不常用的功能,或简化一些常用功能等,从而达到用简单灵活的方法满足特定的需要的目的。 如:A访问B时,每访问一次B,就需要调用一次B对象,由于B对象的复杂性,调用开销较大,尤其是B处于分布式应用当中时。另一方面,直接调用复杂的对象,暴露了过多的A不需要的接口,造成不安全性。
加是中间层C以后,简化了B的接口与复杂性,使得A对C的访问简单灵活安全, A对资源的访问也不一定需要直接连接到B,从而无关分布式访问细节。
实例:最早的计算机操作员直接和底层硬件打交道,操作十分复杂;后果,人们设计了操作系统,将计算机底层硬件操作的复杂性于以屏蔽,并帮助我们自动管理了内存,CPU等资源,大大简化了操作的复杂性。
示例: 跨国公司人力管理系统中,员工信息存放在公司总部的服务器上,而运行于国外分部的HR系统如果如何处理这种情况呢?
接口屏蔽了部分功能。
代理类实现了接口功能,并采用SOAP方法调用了服务器上的对象。 《完》
相关文章推荐
- 设计模式学习之代理模式(Proxy,结构型模式)(11)
- 结构型模式--Proxy代理模式
- 【设计模式】结构型模式之Proxy代理
- 设计模式(十一)代理模式Proxy(结构型)
- 设计模式(十一)代理模式Proxy(结构型)
- 设计模式(八)代理模式(Proxy)-结构型
- 【设计模式基础】结构型模式 - 7 - 代理(Proxy)
- 代理模式Proxy(结构型)
- 设计模式(3)-结构型-代理模式(proxy)以及java动态代理的两种方式
- 结构型模式: Proxy(代理)
- 设计模式-结构型-代理模式(Proxy)
- 设计模式(十一)代理模式Proxy(结构型)
- 设计模式(12)-结构型-代理模式(Proxy)
- 代理模式(Proxy)-对象结构型模式
- Java设计模式(10)——结构型模式之代理模式(Proxy)
- 设计模式(3)-结构型-代理模式(proxy)以及java动态代理的两种方式
- 设计模式第八课 代理模式Proxy(结构型)
- Proxy(代理)-对象结构型模式
- PHP设计模式:结构型之代理(Proxy)
- (结构型模式)Proxy——代理模式