Beispiel #1
0
 public Facade(Vision vision, Turbine turbine, VoiceAssistant voiceAssistant, WheelEngine wheelEngine)
 {
     this.vision    = vision;
     this.turbine   = turbine;
     this.assistant = voiceAssistant;
     this.engine    = wheelEngine;
 }
Beispiel #2
0
        // Facade code
        public void Operation()
        {
            vision.Operation();

            assistant.Operation();

            engine.Operation();

            Console.WriteLine();

            var wheelEngine    = new WheelEngine();
            var voiceAssistant = new VoiceAssistant();

            turbine.Attach(wheelEngine);
            turbine.Attach(voiceAssistant);
            turbine.SomeBusinessLogic();
            turbine.Detach(voiceAssistant);
            turbine.SomeBusinessLogic();
        }
Beispiel #3
0
        static void Main(string[] args)
        {
            Expression isDust   = getDustExpression();
            Expression isGrease = getGreaseExpression();
            Expression isFilth  = getFilthExpression();

            Console.WriteLine("Выберите вид загрязнения, из представленных ниже.");
            Console.WriteLine("В случае несовпадения с режимом пылесоса будет запущена  режим комплексной очистки всех загрязнений.");
            Console.WriteLine("Пыль     /    Грязь     /    Жирное пятно     /    Сгусток пыли     /    Маслянное пятно     /    Грязь с улицы \n\n");
            string cleanigMode = Console.ReadLine();

            if (isDust.interpret(cleanigMode))
            {
                Console.WriteLine("Выбран режим очистки от пыли.");
            }
            else if (isGrease.interpret(cleanigMode))
            {
                Console.WriteLine("Выбран режим очистки от жирных пятен.");
            }
            else if (isFilth.interpret(cleanigMode))
            {
                Console.WriteLine("Выбран режим очистки от грязи.");
            }
            else
            {
                Console.WriteLine("Выбран режим комплексной очистки от всех загрязнений.");
            }

            Console.WriteLine();

            Vision         vision         = new Vision();
            Turbine        turbine        = new Turbine();
            VoiceAssistant voiceAssistant = new VoiceAssistant();
            WheelEngine    wheelEngine    = new WheelEngine();

            Facade facade = new Facade(vision, turbine, voiceAssistant, wheelEngine);

            Client.ClientOperation(facade);
        }