最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#設(shè)計(jì)模式之外觀模式介紹

 更新時(shí)間:2012年10月29日 22:42:50   作者:  
外觀模式:為子系統(tǒng)中的一組接口提供一個(gè)一致的界面,此模式定義了一個(gè)高層的接口,這個(gè)借口使得這子系統(tǒng)容易使用
1、在設(shè)計(jì)初期階段,應(yīng)該要有意識(shí)的將不同的兩層分離,比如考慮數(shù)據(jù)訪問(wèn)層、業(yè)務(wù)邏輯層、表示層之間建立外觀模式,這樣可以為子系統(tǒng)提供簡(jiǎn)單一致的接口,使得耦合大大降低。

2、開(kāi)發(fā)階段,子系統(tǒng)內(nèi)部由于不夠重構(gòu)變得非常復(fù)雜,增加外觀模式可以屏蔽這個(gè)復(fù)雜性,并提供簡(jiǎn)單的接口。

3、維護(hù)一個(gè)遺留的大型系統(tǒng),代碼不好再維護(hù)時(shí),使用外觀模式也是不錯(cuò)的選擇。

看看外觀模式的結(jié)構(gòu)圖:



Facade類(lèi)定義:可以給高層系統(tǒng)提供簡(jiǎn)單的接口
復(fù)制代碼 代碼如下:

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 類(lèi): 底層系統(tǒng)會(huì)被Facade類(lèi)整合簡(jiǎn)單的接口
復(fù)制代碼 代碼如下:

class SubSystemOne
{
public void MethodOne()
{
Console.WriteLine("子系統(tǒng)方法一");
}
}

主函數(shù)調(diào)用:
復(fù)制代碼 代碼如下:

class Program
{
static void Main(string[] args)
{
Facade facade = new Facade();
facade.MethodA();
facade.MethodB();
Console.ReadKey();
}
}

相關(guān)文章

最新評(píng)論

石景山区| 新昌县| 五华县| 外汇| 科技| 曲周县| 韶山市| 巴彦淖尔市| 刚察县| 武义县| 泰宁县| 桦川县| 汝阳县| 巴林右旗| 咸丰县| 嫩江县| 顺义区| 陇西县| 阿勒泰市| 呼和浩特市| 黑龙江省| 温州市| 逊克县| 大关县| 崇左市| 南康市| 改则县| 井研县| 大港区| 庆元县| 黄石市| 申扎县| 西平县| 辽中县| 余江县| 新田县| 佛冈县| 大同县| 招远市| 蒙山县| 开江县|