1、概念
外觀模式是外部與乙個子系統的通訊必須通過乙個統一的外觀物件進行,為子系統中的一組介面提供乙個一致的介面,外觀模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用,屬於物件結構型模式。
2、模式結構
3、使用場景
4、優缺點
優點:缺點:
5、例項
給業務端提供乙個api,業務端只需要根據這個api獲取相關資訊,而不需要知道各子系統的處理邏輯,例如根據使用者獲取相關的訂單資訊。定義userservice處理類,處理user的相關邏輯
public class userservice
}
定義orderservice處理類,處理order的相關邏輯
public class orderservice
}
定義productservice處理類,處理product的相關邏輯
public class productservice
}
定義api處理類,負責跟業務端打交道
public class apicontroller
public listgetorderlist(long userid, int page, int pagesize)
return list;}}
業務端呼叫方式
apicontroller apicontroller = new apicontroller();
apicontroller.getorderlist(10, 1, 10);
外觀模式(Facade)
外觀模式的定義是,為子系統中的一組介面提供乙個一致的inte ce介面介面。外觀模式是個很簡單,但很重要的模式,它主要思想是將表現層和邏輯層隔離,封裝底層的複雜處理,只為使用者提供簡單的介面,這樣的例子隨處可見。外觀模式也叫門面模式,它很多時候更是一種系統架構的設計,在我所做的專案中,就實現了門面模...
Facade外觀模式
facade外觀模式,是一種結構型模式,它主要解決的問題是 元件的客戶和元件中各種複雜的子系統有了過多的耦合,隨著外部客戶程式和各子系統的演化,這種過多的耦合面臨很多變化的挑戰。facade設計模式更注重從架構的層次去看整個系統,而不是單個類的層次。facade外觀模式,是一種結構型模式,它主要解決...
Facade外觀模式
facade外觀模式,是一種結構型模式,它主要解決的問題是 元件的客戶和元件中各種複雜的子系統有了過多的耦合,隨著外部客戶程式和各子系統的演化,這種過多的耦合面臨很多變化的挑戰。在這裡我想舉乙個例子 比如,現在有一輛汽車,我們 客戶程式 要啟動它,那我們就要發動引擎 子系統1 使四個車輪 子系統2 ...