C#物件導向設計模式第十三講:Proxy 代理模式(結構型模式)

來源:互聯網
上載者:User

(根據MSDN Webcast 相關課程整理)

直接與間接:

對於複雜的系統,我們常常在使用時添加一個中介層,從而屏蔽一些不常用的功能,或簡化一些常用功能等,從而達到用簡單靈活的方法滿足特定的需要的目的。

如:A訪問B時,每訪問一次B,就需要調用一次B對象,由於B對象的複雜性,調用開銷較大,尤其是B處於分布式應用當中時。另一方面,直接調用複雜的對象,暴露了過多的A不需要的介面,造成不安全性。

加是中介層C以後,簡化了B的介面與複雜性,使得A對C的訪問簡單靈活安全, A對資源的訪問也不一定需要直接連接到B,從而無關分布式訪問細節。

執行個體:最早的電腦操作員直接和底層硬體打交道,操作十分複雜;後果,人們設計了作業系統,將電腦底層硬體操作的複雜性於以屏蔽,並協助我們自動管理了記憶體,CPU等資源,大大簡化了操作的複雜性。

樣本:

跨國公司人力管理系統中,員工資訊存放在公司總部的伺服器上,而運行於國外分部的HR系統如果如何處理這種情況呢?

介面屏蔽了部分功能。

代理類實現了介面功能,並採用SOAP方法調用了伺服器上的對象。

《完》

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.