門面模式、代理模式、適配器模式的區別

門面模式、代理模式、適配器模式,這三種模式都很接近,他們的區別是:緩存

一、門面模式:代理

爲子系統中的一組接口提供一個一致的界面,此模式定義了一個高層接口,簡化了系統的使用;對象

銀行櫃檯辦理業務能夠理解爲門面模式的一種,客戶經過銀行櫃檯辦理業務,無需瞭解銀行內部複雜的業務邏輯處理,櫃檯辦理員只是把銀行能提供的業務爲客戶端辦理,銀行沒有提供的服務,櫃檯辦理員也沒法辦理的。blog

 

二、代理模式:接口

爲其餘對象提供一種代理以控制對這個對象的訪問。客戶訪問不到被代理對象,能夠經過代理對象間接的訪問;代理對象能夠對上次的訪問結果進行緩存,下次有相同的請求時能夠直接返回緩存而不用去訪問被代理對象;代理對象能夠拒絕沒有訪問權限的用戶,使其不能訪問被代理對象;所以代理模式比門面模式更高級、信息更豐富;權限

  

三、適配器模式:請求

將一個接口轉換成客戶但願的另一個接口,使得本來接口不兼容而不能一塊兒工做的那些類能夠一塊兒工做。im

由於接口的不一樣,爲了讓用戶使用到統一的接口,把原先的對象經過適配器讓用戶統一使用,或者擴充新的功能,大多用在代碼維護的後期,或者借用第三方庫的狀況下。客戶端

適配器模式比代理模式更復雜,他不單單能讓客戶端訪問到實體對象,更能把一堆接口不兼容的實體對象進行有序管理和組織起來,使得他們能協同工做;db

相關文章
相關標籤/搜索