C#設計模式之外觀模式介紹
更新時間:2012年10月29日 22:42:50 作者:
外觀模式:為子系統(tǒng)中的一組接口提供一個一致的界面,此模式定義了一個高層的接口,這個借口使得這子系統(tǒng)容易使用
1、在設計初期階段,應該要有意識的將不同的兩層分離,比如考慮數(shù)據(jù)訪問層、業(yè)務邏輯層、表示層之間建立外觀模式,這樣可以為子系統(tǒng)提供簡單一致的接口,使得耦合大大降低。
2、開發(fā)階段,子系統(tǒng)內部由于不夠重構變得非常復雜,增加外觀模式可以屏蔽這個復雜性,并提供簡單的接口。
3、維護一個遺留的大型系統(tǒng),代碼不好再維護時,使用外觀模式也是不錯的選擇。
看看外觀模式的結構圖:

Facade類定義:可以給高層系統(tǒng)提供簡單的接口
class Facade
{
SubSystemOne one;
SubSystemTwo two;
SubSystemThree three;
SubSystemFour four;
public Facade()
{
one = new SubSystemOne();
two = new SubSystemTwo();
three = new SubSystemThree();
four = new SubSystemFour();
}
public void MethodA()
{
Console.WriteLine("MethodA組合方法");
one.MethodOne();
two.MethodOne();
}
public void MethodB()
{
Console.WriteLine("MethodB組合方法");
three.MethodOne();
four.MethodOne();
}
}
SubSystemOne 類: 底層系統(tǒng)會被Facade類整合簡單的接口
class SubSystemOne
{
public void MethodOne()
{
Console.WriteLine("子系統(tǒng)方法一");
}
}
主函數(shù)調用:
class Program
{
static void Main(string[] args)
{
Facade facade = new Facade();
facade.MethodA();
facade.MethodB();
Console.ReadKey();
}
}
2、開發(fā)階段,子系統(tǒng)內部由于不夠重構變得非常復雜,增加外觀模式可以屏蔽這個復雜性,并提供簡單的接口。
3、維護一個遺留的大型系統(tǒng),代碼不好再維護時,使用外觀模式也是不錯的選擇。
看看外觀模式的結構圖:

Facade類定義:可以給高層系統(tǒng)提供簡單的接口
復制代碼 代碼如下:
class Facade
{
SubSystemOne one;
SubSystemTwo two;
SubSystemThree three;
SubSystemFour four;
public Facade()
{
one = new SubSystemOne();
two = new SubSystemTwo();
three = new SubSystemThree();
four = new SubSystemFour();
}
public void MethodA()
{
Console.WriteLine("MethodA組合方法");
one.MethodOne();
two.MethodOne();
}
public void MethodB()
{
Console.WriteLine("MethodB組合方法");
three.MethodOne();
four.MethodOne();
}
}
SubSystemOne 類: 底層系統(tǒng)會被Facade類整合簡單的接口
復制代碼 代碼如下:
class SubSystemOne
{
public void MethodOne()
{
Console.WriteLine("子系統(tǒng)方法一");
}
}
主函數(shù)調用:
復制代碼 代碼如下:
class Program
{
static void Main(string[] args)
{
Facade facade = new Facade();
facade.MethodA();
facade.MethodB();
Console.ReadKey();
}
}
相關文章
DevExpress之ChartControl創(chuàng)建Drill-Down樣式的Title實例
這篇文章主要介紹了DevExpress之ChartControl創(chuàng)建Drill-Down樣式的Title實現(xiàn)方法,以實例形式講述了創(chuàng)建Drill-Down樣式的Title原理與實現(xiàn)過程,需要的朋友可以參考下2014-10-10Unity Shader實現(xiàn)圖形繪制(藍天白云大海)
這篇文章主要為大家詳細介紹了Unity Shader實現(xiàn)圖形繪制,藍天白云大海,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-04-04