幸运星空

Lucker的程序人生

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

(根据MSDN Webcast 相关课程整理)

直接与间接:

对于复杂的系统,我们常常在使用时添加一个中间层,从而屏蔽一些不常用的功能,或简化一些常用功能等,从而达到用简单灵活的方法满足特定的需要的目的。

如:A访问B时,每访问一次B,就需要调用一次B对象,由于B对象的复杂性,调用开销较大,尤其是B处于分布式应用当中时。另一方面,直接调用复杂的对象,暴露了过多的A不需要的接口,造成不安全性。

clip_image002

加是中间层C以后,简化了B的接口与复杂性,使得A对C的访问简单灵活安全, A对资源的访问也不一定需要直接连接到B,从而无关分布式访问细节。

clip_image004

实例:最早的计算机操作员直接和底层硬件打交道,操作十分复杂;后果,人们设计了操作系统,将计算机底层硬件操作的复杂性于以屏蔽,并帮助我们自动管理了内存,CPU等资源,大大简化了操作的复杂性。

clip_image006

示例:

跨国公司人力管理系统中,员工信息存放在公司总部的服务器上,而运行于国外分部的HR系统如果如何处理这种情况呢?

clip_image008

接口屏蔽了部分功能。

clip_image010

代理类实现了接口功能,并采用SOAP方法调用了服务器上的对象。

《完》

posted on 2011-12-29 17:43  Lucker  阅读(479)  评论(0编辑  收藏  举报