程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> Design patterns V : Facade Pattern

Design patterns V : Facade Pattern

編輯:C#入門知識

/* Author: Jiangong SUN */   Facade Pattern (外觀模式) provides a unique interface to a set of methods of different subsystems in an application. It's widely used in application development. It's a structural pattern.   Now let's see the implementation in CSharp. Firstly, create subsystems and their methods.         class SubSytemOne         {             public void MethodOne()             {                 Console.WriteLine("SubSystemOne Method");             }         }         class SubSytemTwo         {             public void MethodTwo()             {                 Console.WriteLine("SubSystemTwo Method");             }         }         class SubSytemThree         {             public void MethodThree()             {                 Console.WriteLine("SubSystemThree Method");             }         }         class SubSytemFour         {             public void MethodFour()             {                 Console.WriteLine("SubSystemThree Method");             }         }   Create Facade class and its methods as an interface to subsystems' methods' aggregation.         class Facade         {             private readonly SubSytemOne _one;             private readonly SubSytemTwo _two;             private readonly SubSytemThree _three;             private readonly SubSytemFour _four;             public Facade()             {                 _one = new SubSytemOne();                 _two = new SubSytemTwo();                 _three = new SubSytemThree();                 _four = new SubSytemFour();             }             public void MethodA()             {                 Console.WriteLine("MethodA():");                 _one.MethodOne();                 _three.MethodThree();             }             public void MethodB()             {                 Console.WriteLine("MethodB():");                 _two.MethodTwo();                 _four.MethodFour();             }             public void MethodC()             {                 Console.WriteLine("MethodC():");                 _one.MethodOne();                 _two.MethodTwo();                 _four.MethodFour();             }         }   The clients can call facade's methods to satisfy its requirements.                 var facade = new Facade();                 facade.MethodA();                 facade.MethodB();                 facade.MethodC();   So this is the implementation of facade pattern. I hope you enjoy this article. Enjoy coding!  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved