static void Main(string[] args) { LaptopBuilder gamingLaptopBuilder = new GamingLaptopBuilder(); BuyLaptop buyLaptop = new BuyLaptop(); buyLaptop.SetLaptopBuilder(gamingLaptopBuilder); buyLaptop.ConstructLaptop(); var laptop = buyLaptop.GetLaptop(); Console.WriteLine($"{laptop.Memory}, {laptop.MonitorResolution}, {laptop.Battery}, {laptop.HDD}, {laptop.Processor}"); Console.ReadKey(); }
static void Main(string[] args) { var buyGamingLaptop = new BuyLaptop(new GamingLaptop()); buyGamingLaptop.BuildLaptop(); var buySlowLaptop = new BuyLaptop(new SlowLaptop()); buySlowLaptop.BuildLaptop(); Laptop lap1 = buyGamingLaptop.GetLaptop(); Laptop lap2 = buySlowLaptop.GetLaptop(); Console.WriteLine($"Gaming laptop: {lap1.CPU} {lap1.Battery} {lap1.Memory} {lap1.Monitor}"); Console.WriteLine($"Slow laptop: {lap2.CPU} {lap2.Battery} {lap2.Memory} {lap2.Monitor}"); Console.ReadKey(); }
public static void Main() { //Your system could have bulk of builders var tripBuilder = new TripLaptopBuilder(); var gamingBuilder = new GamingLaptopBuilder(); var shopForYou = new BuyLaptop(); //director shopForYou.SetLaptopBuilder(gamingBuilder); //Customer answered that he wants to play shopForYou.ConstructLaptop(); Laptop laptop = shopForYou.GetLaptop(); //just get what he wants Console.WriteLine(laptop.ToString()); shopForYou.SetLaptopBuilder(tripBuilder); shopForYou.ConstructLaptop(); var tripLaptop = shopForYou.GetLaptop(); Console.WriteLine(tripLaptop.ToString()); }
static void Main(string[] args) { var tripLaptopBuilder = new TripLaptopBuilder(); var gamingLaptopBuilder = new GamingLaptopBuilder(); var shopForYou = new BuyLaptop(); shopForYou.SetLaptopBuilder(gamingLaptopBuilder); shopForYou.ConstructorLaptop(); Laptop laptop = shopForYou.GetLaptop(); Console.WriteLine(laptop.ToString()); shopForYou.SetLaptopBuilder(tripLaptopBuilder); shopForYou.ConstructorLaptop(); Laptop laptop2 = shopForYou.GetLaptop(); Console.WriteLine(laptop2.ToString()); Console.ReadLine(); }