設計模式之門面模式

2021-07-08 18:40:54 字數 800 閱讀 9890

模式定義:

為子系統中的一組介面提供乙個統一的高層介面,使子系統更容易使用。該模式通過外觀介面與子系統

互動,而不與具體的子系統中的細節互動。【分層結構、mvc、web應用中的三層結構】

遵循原則:

迪公尺特原則--最少知識原則,你不需要知道的你就不要知道,你知道幹什麼?;

封裝變化部分。

適用場合:

(1)乙個系統複雜度比較高,需要乙個更高階別的簡單介面來簡化對子系統的呼叫;

(2)端與端之間聯絡太複雜,需要進行抽象,減少耦合性,層級化子系統。

知識擴充套件:

jdk中的logger、sl4j就是典型的實踐者,另外web的層級結構就是最好的詮釋。

public inte***ce ispareribs

做一頓飯需要很多步驟

public class spareribs implements ispareribs

@override

public void juice()

@override

public void prepare()

@override

public void preserve()

}/**

* 向外界公布的介面,就是做糖醋排骨,細節就不要管了

* @author xsy**/

public inte***ce icookfacade

public class cookfacade implements icookfacade }測試

public class client

}

設計模式之門面模式

coding gbk coding utf 8 author edgar 這是門面模式的乙個應用場景。具體故事情節請見 設計模式之禪 門面模式把一套方法封裝起來,使用者不需要知道具體的實現細節。class letterprocessimpl object def writecontext self,...

設計模式之門面模式

外觀模式定義了乙個高層介面,讓子系統更容易使用 結構性場景 有個 允許使用者用自己的積分來兌換商店內禮物,兌換需要經過校驗積分,支付積分,生成訂單的過程,單對呼叫兌換積分的介面來說不用關心裡面的三個過程,只需關心呼叫兌換積分的介面 新建積分兌換禮物實體類 package com.tangbaobao...

設計模式之門面模式

在許多開源的框架中都充分的利用了設計模式這一概念,struts典型的mvc模式的化身,spring是工廠模式和單例模式的充分體現。在專案開發中,能充分利用設計模式的思想來考慮問題,來解決問題,來通過 去實現。不但可以提高 的質量,對程式的擴充套件,重用帶來很大方便。其實我們專案中用設計模式程式設計就...