static void Main(string[] args) { // Simple Factory IFanFactorySimple simpleFactory = new SimpleFanFactory(); // Creation of a Fan using Simple Factory IFan fan = simpleFactory.CreateFan(FanType.TableFan); // Use created object fan.SwitchOn(); // Methods Factory IFanFactoryMethod fanFactory = new PropellerFanFactory(); // Creation of a Fan using Factory Method IFan fanMethod = fanFactory.CreateFan(); // Use created object fanMethod.SwitchOn(); // Abstract Methods Factory IElectricalFactory electricalFactory = new IndianElectricalFactory(); //IElectricalFactory electricalFactory = new USElectricalFactory(); IFan fanAbstract = electricalFactory.GetFan(); fanAbstract.SwitchOn(); Console.ReadKey(); }
public static void Main() { IFanFactory simpleFactory = new FanFactory(); IFan fan = simpleFactory.CreateFan(FanType.UltraFan); fan.SwitchOn(); }
public static void Main() { IFanFactory fanFactory = new FutureFanFactory(); IFan fan = fanFactory.CreateFan(); fan.SwitchOn(); }
//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(); }
public void DoWork() { IFanFactory simpleFactory = new FanFactory(); // Creation of a Fan using Simple Factory IFan fan = simpleFactory.CreateFan(FanType.TableFan); // Use created object fan.SwitchOn(); }
public static void Main() { //IElectricalFactory bulgarianFactory = new BulgarianFactory(); IElectricalFactory usFactory = new USFactory(); IFan usFan = usFactory.GetFan(); usFan.SwitchOn(); }
static void Main(string[] args) { try { Console.WriteLine("--------------------------**Factory Method Pattern**--------------------------------"); var coolingObj = new AirConditioner().ExecuteCreation(TempEnum.Cooling, 22); coolingObj.Operate(); var warmObj = new AirConditioner().ExecuteCreation(TempEnum.Warming, 45); warmObj.Operate(); Console.WriteLine("--------------------------------"); //factory method var coolingObj1 = AirConditioner.InitializeFactories().ExecuteCreation(TempEnum.Cooling, 10); coolingObj1.Operate(); var warmingObj1 = AirConditioner.InitializeFactories().ExecuteCreation(TempEnum.Warming, 50); warmingObj1.Operate(); Console.WriteLine("------------------------------------------------------------------------"); Console.WriteLine("---------------------------**Simple Factory Pattern**-------------------------------"); IFanFactory fanFactory = new FanFactory(); IFan tableFan = fanFactory.CreateFan(FanType.TableFan); tableFan.SwitchOn(); tableFan.SwitchOff(); IFan ceilingFan = fanFactory.CreateFan(FanType.CeilingFan); ceilingFan.SwitchOn(); ceilingFan.SwitchOff(); Console.WriteLine("------------------------------------------------------------------------"); Console.WriteLine("---------------------------**Abstract Factory Pattern**-------------------------------"); IMobilePhone_AbstarctFactory mobilePhone = new Nokia_ConcreteFactory(); MobileClient mc = new MobileClient(mobilePhone); Console.WriteLine("**NOKIA**"); Console.WriteLine(mc.GetNormalPhoneDetails()); Console.WriteLine(mc.GetSmartPhoneDetails()); IMobilePhone_AbstarctFactory mobilePhone1 = new Samsung_ConcreteFactory(); MobileClient mc1 = new MobileClient(mobilePhone); Console.WriteLine("**Samsung**"); Console.WriteLine(mc1.GetNormalPhoneDetails()); Console.WriteLine(mc1.GetSmartPhoneDetails()); } catch (Exception) { throw; } finally { Console.ReadLine(); } }
//The client code is as follows: static void Main(string[] args) { IFanFactory fanFactory = new PropellerFanFactory(); // Creation of a Fan using Factory Method Pattern IFan fan = fanFactory.CreateFan(); // Use created object fan.SwitchOn(); Console.ReadLine(); }
static void Main(string[] args) { 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/1135918/Factory-Patterns-Factory-Method-Pattern static void Main() { IFanFactory tableFanFactory = new TableFanFactory(); IFan tableFan = tableFanFactory.CreateFan(); tableFan.SwitchOn(); tableFan.SwitchOff(); IFanFactory ceilingFanFactory = new CeilingFanFactory();; IFan ceilingFan = ceilingFanFactory.CreateFan(); ceilingFan.SwitchOn(); ceilingFan.SwitchOff(); IFanFactory exhaustFanFactory = new ExhaustFanFactory();; IFan exhaustFan = exhaustFanFactory.CreateFan(); exhaustFan.SwitchOn(); exhaustFan.SwitchOff(); }
static void Main() { USElecticalFactory uSElecticalFactory = new USElecticalFactory(); IFan fan = uSElecticalFactory.GetFan(); fan.SwitchOn(); fan.SwitchOff(); ITubelight tubelight = uSElecticalFactory.GetTubelight(); tubelight.SwitchOn(); tubelight.SwitchOff(); IndianElecticalFactory indianElecticalFactory = new IndianElecticalFactory(); IFan fan2 = indianElecticalFactory.GetFan(); fan2.SwitchOn(); fan2.SwitchOff(); ITubelight tubelight2 = indianElecticalFactory.GetTubelight(); tubelight2.SwitchOn(); tubelight2.SwitchOff(); }