Facade Pattern簡單隨筆

2022-01-20 18:19:23 字數 2628 閱讀 4982

facade模式注重的是簡化介面,為乙個複雜子系統提供乙個簡單介面。 facade pattern:簡化客戶程式與子系統之間的互動介面,將複雜系統的內部子系統與客戶程式之間的依賴解耦。 

facade模式定義了乙個高層介面,為子系統中的一組介面提供乙個一致的介面,這個介面使得這一子系統更加容易使用。

facade模式對客戶遮蔽了子系統元件,因而減少了客戶處理的物件的數目並使得子系統使用起來更加方便。facade模式實現了子系統與客戶之間的松耦合關係,而子系統內部的功能元件往往是緊耦合的。松耦合關係使得子系統的元件變化不會影響到它的客戶。

對於操作a,b,c而言,如果僅僅通過客戶端來運算元據物件,將生成a,b,c相應的物件(完全由客戶自己建立),比較繁瑣。

通過將操作a,b,c的操作隱藏到facadeoperater類中進行相應的操作,提供給客戶端的就僅僅是乙個方法而已,簡單,方便,易於維護。

也就是說將a,b,c的操作整合到facadeoperater類中。

a,b,c**如下:

1using

system;

2using

system.collections.generic;

3using

system.text;45

namespace

facadepatternsam617

else

1821

return

result;22}

23}24}

2526

27using

system;

28using

system.collections.generic;

29using

system.text;

3031

namespace

facadepatternsam

3242

else

4346

return

result;47}

48}49}

5051

52using

system;

53using

system.collections.generic;

54using

system.text;

5556

namespace

facadepatternsam

5767

else

6872

return

result;73}

74}75}

76將這3個類的操作整合;

1using

system;

2using

system.collections.generic;

3using

system.text;45

namespace

facadepatternsam621

else

2226

return

result;27}

28}29}

30運算元據為:

1using

system;

2using

system.collections.generic;

3using

system.text;45

namespace

facadepatternsam619

public

string

name

2025}26

27public

float

age2833}

3435

public

float

number

364142}

43}44}

45客戶端**:一種是沒外觀模式的  一種為用這種模式的,當然 這個例子比較簡單,**量差不多

1using

system;

2using

system.collections.generic;

3using

system.text;45

namespace

facadepatternsam620

else

2124

console.writeline();

25console.readline();

2627

//外觀模式操作

28facadeoperater oper 

=new

facadeoperater();

29clientdata obj 

=new

clientdata(

"yyyyyyyyyyy", 

50, 

60);

30if

(oper.verifyall(obj))

3134

else

3538

console.readline();39}

40}41}

42顯示結果如下所示:

外觀模式(facade pattern)

外觀模式,為子系統的一組介面提供乙個統一的介面,此模式定義了乙個高層介面,這乙個高層介面使的子系統更加容易使用。典型的分層例子是net三層架構,介面層與業務邏輯層分離,業務邏輯層與資料訪問層分類。這樣可以為子系統提供統一的介面和介面,降低了系統的耦合性。隨著功能增加及程式的重構,系統會變得越來越複雜...

外觀模式(Facade Pattern)

模式動機 引入外觀角色之後,使用者只需要直接與外觀角色互動,使用者與子系統之間的複雜關係由外觀角色來實現,從而降低了系統的耦合度。模式動機 外觀模式 facade pattern 外部與乙個子系統的通訊必須通過乙個統一的外觀物件進行,為子系統中的一組介面提供乙個一致的介面,外觀模式定義了乙個高層介面...

外觀模式(Facade Pattern)

外觀模式定義 為子系統中的一組介面提供乙個一致的介面 此模式定義了乙個高層介面,該介面使得這一子系統更加容易使用 站在person的角度思考其實不關心投資的具體細節,關注的是投資這個動作,如此一來,我們應該考慮封裝具體實現細節,對外提供統一的方法進行呼叫,這樣將使介面呼叫方和複雜的實現解耦 特別要注...