package zzq.designpatterns.structuralpattern;
/** * 外觀(facade)模式的定義:是一種通過為多個複雜的子系統提供乙個一致的介面,而使這些子系統更加容易被訪問的模式。該模式對外有乙個統一介面,外部應用程式不用關心內部子系統的具體的細節,這樣會大大降低應用程式的複雜度,提高了程式的可維護性。
* * 外觀(facade)模式是「迪公尺特法則」的典型應用,它有以下主要優點。
* 降低了子系統與客戶端之間的耦合度,使得子系統的變化不會影響呼叫它的客戶類。
* 對客戶遮蔽了子系統元件,減少了客戶處理的物件數目,並使得子系統使用起來更加容易。
* 降低了大型軟體系統中的編譯依賴性,簡化了系統在不同平台之間的移植過程,因為編譯乙個子系統不會影響其他的子系統,也不會影響外觀物件。
* * 外觀(facade)模式的主要缺點如下。
* 不能很好地限制客戶使用子系統類。
* 增加新的子系統可能需要修改外觀類或客戶端的源**,違背了「開閉原則」。
* * 總結:類似於微服務,統一入口閘道器,而不是乙個乙個的單獨去訪問底層服務
*/public class facade
}//子系統角色
class subsystem01
}//子系統角色
class subsystem02
}//子系統角色
class subsystem03
}public static void main(string args)
}
Java設計模式(九) 外觀模式
外觀模式 一 定義 二 結構 三 案例 四 特點 一 定義 facade 外觀 模式為子系統中的各類 或結構與方法 提供乙個簡明一致的介面,隱藏子系統的複雜性,使子系統更加容易使用。二 結構 門面 facade 角色 客戶端可以呼叫這個角色的方法。此角色知曉相關的 乙個或者多個 子系統的功能和責任。...
設計模式學習(九)外觀模式
子系統 public class player 開啟 public voidon 關閉 public void off 執行 public void play 放完了 public void pause 爆公尺花機 public class popcorn 爆公尺花機開機 public voidon...
大話設計模式學習(九) 外觀模式
外觀模式,為子系統中的一組介面提供乙個一直的介面,此模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。四個子系統的類 外觀類 他需了解所有的子系統的方法或屬性,進行組合,以備外界呼叫 客戶端呼叫 由於 facade 的作用,客戶端可以根本不知道三個子系統類的存在 首先,在設計初級階段,應該...