2010-05-03 49 views
9

我有一個關於圖案的問題。我真的有設計模式的問題。你能告訴我門面模式和建築師,工廠和抽象工廠模式之間的區別嗎?立面圖案和其他圖案之間的差異

+1

______家庭? – 2010-05-03 20:05:32

回答

4

Facade模式將開發人員的細節從應用程序中提取出來,並使代碼的某個部分更易於使用。

構建模式將對象的構造從其表示中分離出來。這使得跨多種類型使用相同的構造過程成爲可能。

工廠和抽象工廠都處理基於工廠調用時使用的某些參數實例化相關的一組類。

+0

所以我查了一下http://www.dofactory.com/Patterns/PatternFacade.aspx#_self1 ,通常情況下,我認爲模式:我可能在某處使用了模式,而不知道它被稱爲什麼。 – 2010-06-26 23:23:44

6

當您想要隱藏實現或以其他方式在外部提供不同的接口時使用外觀模式。當您想要隱藏構造實例的細節時,將使用構建器/工廠模式。

2

這些和其他模式可能通常看起來非常相似。不同之處在於您使用模式的設計決策。

外觀是關於改變一些類或一組類的接口。 Builder通過將其分解成更小的步驟來隱藏施工過程。工廠是關於隱藏對象或對象圖的具體實現或實例。

混淆可能來自這樣一個事實,即Builder通常會以某種方式改變對象的界面以允許更好的構建方式,這也可以通過Facade來完成。它與工廠類似。

所以,不要忘記這些模式實現的細微差別,關於設計模式的最重要的部分是您所做的設計決策。