外观模式(Façade Pattern)
2010-08-26 22:10 Clingingboy 阅读(971) 评论(0) 编辑 收藏 举报这个模式非常的简单,可以说称不上模式
打个比方,我们大部分时候运行源代码程序需要做一下几件事情,其实就是做封装,简化操作
- 打开IDE
- 打开项目
- 编译
- 运行
来看下面例子
internal class SubsystemA { internal string A1() { return "Subsystem A, Method A1\n"; } internal string A2() { return "Subsystem A, Method A2\n"; } } internal class SubsystemB{ internal string B1() { return "Subsystem B, Method B1\n"; } }
我需要调用这三个类来完成一件事情,新建一个Facade类,Operation1方法简化了操作
public static class Facade { static SubsystemA a = new SubsystemA(); static SubsystemB b = new SubsystemB(); static SubsystemC c = new SubsystemC(); public static void Operation1() { Console.WriteLine("Operation 1\n" + a.A1() + a.A2() + b.B1()); } public static void Operation2() { Console.WriteLine("Operation 2\n" + b.B1() + c.C1()); } }
新建一个类,调用这两个方法
class Client { public void ClientMain () { Facade.Operation1(); Facade.Operation2(); } }
最终客户端的调用,只需要一步
static void Main() { new Client().ClientMain(); Console.ReadKey(); }