外观模式(Facade Pattern)

      外观模式在生活中的例子处处都在,代码中也处处在用。它将自己最简洁的面貌展示给客户程序调用,有点金玉其外,“复杂”其中的意思。
      下面用汽车启动为例,当我们扣动车钥匙发动车时,汽车内部进行了一系列的操作来发动引擎。

    public class App
    {
        
public static void Main()
        {
            Car car 
= new Car();
            car.Run();
            car.Stop();

            Console.ReadLine();
        }
    }

    
internal class Enginee
    {
        
public void Open()
        {
            Console.WriteLine(
"引擎启动");
        }

        
public void Close()
        {
            Console.WriteLine(
"引擎关闭");
        }
    }

    
internal class Carburettor
    {
        
public void Open()
        {
            Console.WriteLine(
"化油器加油");
        }

        
public void Close()
        {
            Console.WriteLine(
"化油器停止加油");
        }
    }

    
internal class Firedevice
    {
        
public void Open()
        {
            Console.WriteLine(
"起火器点火");
        }

        
public void Close()
        {
            Console.WriteLine(
"起火器关闭");
        }
    }

    
public class Car
    {
        Firedevice fire;
        Carburettor burettor;
        Enginee enginee;

        
public Car()
        {
            fire 
= new Firedevice();
            burettor 
= new Carburettor();
            enginee 
= new Enginee();
        }

        
public void Run()
        {
            fire.Open();
            burettor.Open();
            enginee.Open();
            
//.
            fire.Close();
            Console.WriteLine(
"车已启动");
        }

        
public void Stop()
        {
            burettor.Close();
            enginee.Close();
            Console.WriteLine(
"车已停止");
        }
    }
posted @ 2009-07-26 15:11  binfen  阅读(253)  评论(0编辑  收藏  举报