public static void Main() { FanFactory fanFactory = new FanFactory(); IFan ceilingFan = fanFactory.CreateFan(FanType.CeilingFan); IFan tableFan = fanFactory.CreateFan(FanType.TableFan); ceilingFan.SwitchOn(); tableFan.SwitchOff(); Console.WriteLine(ceilingFan.GetState()); Console.WriteLine(tableFan.GetState()); }
//https://www.codeproject.com/Articles/1131770/Factory-Patterns-Simple-Factory-Pattern static void Main() { IFanFactory simpleFanFactory = new FanFactory(); IFan fan = simpleFanFactory.CreateFan(FanType.TableFan); fan.SwitchOn(); fan.SwitchOff(); }