外觀模式

艾鑫4646發表於2024-11-13

外觀模式,又叫門面模式

外觀模式(facade),為子系統中的一組介面提供一個一致的介面,此模式定義了一個高層介面,這個介面使得這一子系統更加容易使用。


外觀模式在什麼時候使用最好?這要分三個階段來說,首先,在設計初期階段,應該要有意識的將不同的兩個層分離,比如經典的三層架構,就需要考慮在資料訪問層和業務邏輯層、業務邏輯層和表示層的層與層之間建立外觀Facade,這樣可以為複雜的子系統提供一個簡單的介面,使得耦合大大降低。其次,在開發階段,子系統往往因為不斷的重構演化而變得越來越複雜,大多數的模式使用時也都會產生很多很小的類,這本是好事,但也給外部呼叫它們的使用者程式帶來了使用上的困難,增加外觀Facade可以提供一個簡單的介面,減少他們之間的依賴。第三,在維護一個遺留的大型系統時,可能這個系統已經非常難以維護和擴充套件了,但因為它包含非常重要的功能,新的需求開發必須要依賴於它。此時用外觀模式Facade也是非常合適的。你可以為新系統開發一個外觀Facade類,來提供設計粗糙或高度複雜的遺留程式碼的比較清晰簡單的介面,讓新系統與Facade物件互動,Facade與遺留程式碼互動所有複雜的工作。

相關文章