門面模式

門面模式

       門面模式又叫外觀模式。外部與一個子系統通訊必須經過一個統一的門面對象進行。門面模式提供一個高層次的藉口,使子系統更易於使用。對象

 

1.結構

  門面系統沒有通常化的結構,可是每一個門面系統至少都含有兩個重要角色:門面角色和系統角色。blog

  • 門面角色(Facade):

  與客戶端通訊的角色。門面角色知曉相關子系統的功能和責任。農場客戶端的請求被門面角色委派到相應的子系統當中。門面角色一般是一個單利類。一個系統中有多個子系統,每一個子系統能夠有一個門面類。請求

  • 子系統角色(Subsystem):

  能夠同時有一個或多個子系統,每一個子系統都不是單獨的類,而是一個類的集合。每一個子系統歐能夠被客戶端直接調用或者門面角色調用。子系統不知道門面角色的存在,對子系統而言,門面角色是另外的一個客戶端。im

  這裏的「子系統」並不是是必定是項目結構中的系統,能夠理解爲系統中的模塊。例如訂單系統包含訂單信息模塊(子系統)、商品信息模塊(子系統)、售後服務信息模塊(子系統)等。通信

 

2.例子:

  不使用門面模式:

 

  使用門面模式:

 

3.小結

       門面模式是對客戶端的鬆耦合,將客戶端使用到的多個對象抽象到一個門面類中,從而將客戶端請求由門面類委派到子系統中。客戶端

相關文章
相關標籤/搜索