コード例 #1
0
ファイル: Program.cs プロジェクト: yqbrad/DesignPattern
        //Avoid coupling the sender of a request to its receiver by giving more than one
        //object chance to handle the request.
        static void Main(string[] _)
        {
            var lamp    = new Lamp();
            var turnOff = new TurnOff(lamp);
            var turnOn  = new TurnOn(lamp);

            var remote = new RemoteControl();

            remote.Submit(turnOff);
            remote.Submit(turnOn);

            Console.ReadKey();
        }
コード例 #2
0
        static void Main()
        {
            var bulb = new Bulb();

            var turnOn  = new TurnOn(bulb);
            var turnOff = new TurnOff(bulb);

            var remote = new RemoteControl();

            remote.Submit(turnOn);
            remote.Submit(turnOff);

            Console.ReadLine();
        }
コード例 #3
0
        static void Main(string[] args)
        {
            var myGarage = new Garage("Huy Tran's Garage");

            var openGarage  = new GarageOpen(myGarage);
            var CloseGarage = new GarageClose(myGarage);

            var myRemote = new RemoteControl();

            int choose;

            myRemote.Show();
            choose = Int32.Parse(Console.ReadLine());
            while (choose != 3)
            {
                switch (choose)
                {
                case 1:
                    Console.ForegroundColor = ConsoleColor.Red;
                    myRemote.Submit(openGarage);
                    Console.ResetColor();
                    break;

                case 2:
                    Console.ForegroundColor = ConsoleColor.Red;
                    myRemote.Submit(CloseGarage);
                    Console.ResetColor();
                    break;

                case 3:
                    break;
                }
                if (choose == 3)
                {
                    break;
                }
                Console.WriteLine();
                myRemote.Show();
                choose = Int32.Parse(Console.ReadLine());
            }


            Console.WriteLine();
            Console.ReadKey();
        }
コード例 #4
0
        static void Main(string[] args)
        {
            var bulb = new Bulb();

            var turnOn = new TurnOn(bulb);

            var turnOff = new TurnOff(bulb);

            var remote = new RemoteControl();

            remote.Submit(turnOn);

            remote.Submit(turnOff);

            turnOff.Undo();

            turnOn.Redo();

            Console.ReadKey();
        }