static void Main(string[] args)
        {
            OptionsEnum option;;

            while ((option = getOption()) == OptionsEnum.Unknown)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("Error en la opción ingresada");
                Console.ForegroundColor = ConsoleColor.White;
                Console.WriteLine();
            }

            switch (option)
            {
            case OptionsEnum.StrategyPattern:
            {
                MallardDuck mallardDuck = new MallardDuck();
                Console.WriteLine(mallardDuck.display());
                Console.WriteLine(mallardDuck.performQuack());
                Console.WriteLine(mallardDuck.performFly());

                // Change behavior dynamically
                Console.WriteLine("Changing dynamically behaviour of mallard duck...");
                mallardDuck.setFlyBehavior(new FlyNoWay());
                mallardDuck.setQuackBehavior(new Squeak());
                Console.WriteLine(mallardDuck.display());
                Console.WriteLine(mallardDuck.performQuack());
                Console.WriteLine(mallardDuck.performFly());
            }
            break;

            case OptionsEnum.ObserverPattern:
            {
                //WeatherData weatherData = new WeatherData();
                //CurrentConditionsDisplay currentConditionsDisplay = new CurrentConditionsDisplay(weatherData);
                //ForecastDisplay forecastDisplay = new ForecastDisplay(weatherData, 29.92f);
                ObserverPattern.SecondSolution.WeatherData weatherData = new ObserverPattern.SecondSolution.WeatherData();
                ObserverPattern.SecondSolution.CurrentConditionsDisplay currentConditionsDisplay = new ObserverPattern.SecondSolution.CurrentConditionsDisplay(weatherData);
                ObserverPattern.SecondSolution.ForecastDisplay          forecastDisplay          = new ObserverPattern.SecondSolution.ForecastDisplay(weatherData, 29.92f);
                Console.WriteLine("Setting measurements (t, h, p) = (80, 65, 30.4)...");
                weatherData.setMeasurements(80, 65, 30.4f);
                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine(currentConditionsDisplay.display());
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.WriteLine(forecastDisplay.display());
                Console.ForegroundColor = ConsoleColor.White;
                Console.WriteLine("Setting measurements (t, h, p) = (82, 70, 29.2)...");
                weatherData.setMeasurements(82, 70, 29.2f);
                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine(currentConditionsDisplay.display());
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.WriteLine(forecastDisplay.display());
                Console.ForegroundColor = ConsoleColor.White;
                Console.WriteLine("Setting measurements (t, h, p) = (78, 90, 29.2)...");
                weatherData.setMeasurements(78, 90, 29.2f);
                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine(currentConditionsDisplay.display());
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.WriteLine(forecastDisplay.display());
                Console.ForegroundColor = ConsoleColor.White;
            }
            break;
            }


            Console.ReadKey();
        }