1.定義:為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。
2.uml類圖:
3.簡單**實現:
package com.guo.facadepattern;
public
class subsystemone
}package com.guo.facadepattern;
public
class subsystemtwo
}package com.guo.facadepattern;
public
class subsystemthree
}package com.guo.facadepattern;
public
class subsystemfour
}
package com.guo.facadepattern;
public
class
facade
public
void
methoda()
public
void
methodb()
}
package com.guo.facadepattern;
public
class facadeclient
}
4.使用場景:
首先,在設計初期階段,應該要有意識的將不同的兩個層分離,比如mvc就需要考慮在層與層之間建立外觀facade,這樣可以為複雜的子系統提供乙個簡單的介面,使得耦合大大降低。其次,在開發階段,子系統往往因為不斷的重構演化而變得越來越複雜,大多數的模式使用時也都會產生很多很小的類,這本是好事,但也給外部呼叫它們的使用者程式帶來了使用上的困難,增加外觀facade可以提供乙個簡單的介面,減少它們之間的依賴。第三,在維護乙個遺留的大型系統時,可能這個系統已經非常難以維護和擴充套件了,但因為它包含非常重要的功能,新的需求開發必須要依賴它。此時用外觀模式facade也是比較合適的。你可以為新系統開發乙個外觀facade類,來提供設計粗糙或高度複雜的遺留**的比較清晰簡單的介面,讓新系統與facade物件互動,facade與遺留**互動所有複雜的工作。
大話設計模式讀書筆記 外觀模式
人物 大鳥,小菜 事件 小菜與大鳥談起了 大鳥就藉著 裡 和 的概念給小菜談起了外觀模式 外觀模式 1.借用 的 和 簡單闡述外觀模式 2.對外觀模式進行小結 設計思路如圖 買 1 public void buy 2 slf4j public class stock2 買 1 public void...
大話設計模式之外觀模式(門面模式)
外觀模式 為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。人如其名,我們一看外觀設計模式 門面設計模式 uml圖就能立刻領會到該設計模式的用處。我們在做開發的設計初期階段,應該有意識的將不同的兩個層分離,比如經典的三層架構,就需要考慮在資料訪問層...
設計模式讀書筆記 外觀模式
講的是如何將乙個介面轉換成客戶所需要的另乙個接 口,它的目的在於 解決介面的不相容性問題。現在這裡有這樣乙個模式,它的目的在於如何簡化介面,它可以將多個 類的複雜的一切隱藏在背後,只顯露 出乙個乾淨美觀的外觀。晚上睡覺之前,你總是喜歡看電視,在你進入臥室的時候你需要完成以下幾個步驟 開啟電燈 開啟空...