設計模式 3 之外觀模式

2021-09-11 23:30:34 字數 642 閱讀 3742

外觀模式

為乙個複雜的模組提供乙個唯一的呼叫介面,降低了物件呼叫與具體實現之間的耦合性

核心封裝互動,簡化呼叫

需求環境

如果乙個子系統中有多個不同的模組 ,client需要通過組合這些不同的模組來實現某乙個具體的需求,那麼可以穿件乙個facade類,這個類持有不同模組的物件,可以在facade類中組合不同的模組來實現不同的需求,這樣client就不用處理組合的步驟了,這樣就降低了呼叫與具體實現之間的耦合性,也使呼叫變得更加簡單了.

**:

public class buyvegetable 

}

public class washvegetable 

}

public class fryvegetable 

}

public class eatvegetable 

}

public class hangryclient 

}

呼叫測試

new hangryclient().eat();
補充說明:

在client類中,可以把物件的初始化放到構造方法中,讓client類持有各子模組或子類的應用,這樣通過組合可以完成很多更複雜更多樣的需求,最好能把client類做成單例.

設計模式之外觀模式

外觀模式提供了乙個統一的介面,用來訪問子系統中的一群介面。這樣可以避免客戶端和子系統之間的緊耦合。這種模式需要將一系列的子系統組合到外觀中,然後將具體的工作交給各個子系統去完成。如此一來,可以簡化介面的呼叫。其本質就是將系統與客戶端互動的地方封裝起來。這個模式,總體來說,很簡單,理解起來也不困難。依...

設計模式之外觀模式

外觀模式 為子系統中的一組介面提供乙個一直的介面,此模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。即通過乙個中類來完成客戶端的請求。拿機房收費系統的上機過程來說,上機需要顯示上機者的資訊,填寫上機狀態表,填寫上機記錄表。而使用者不需要知道這些功能是怎麼實現的,只需要通過介面操作就可以完...

設計模式之外觀模式

外觀模式,為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。在設計初期階段,應該要有意識的將不同的兩個層分離,比如經典的三層架構,層與層之間建立外觀facade。在開發階段,子系統往往因不斷的重構演化而變得越來越複雜,增加外觀模式可以提供乙個簡單的...