private static void BuilderPatterDemo() { AbstractMountainBike mountainBike = new Downhill(BikeColor.Green, new Widewheel(24)); BikeBuilder builder = new MountainBikeBuilder(mountainBike); //builde object BikeDirector director = new MountainBikeDirector(); // diector object IBicycle bicycle = director.Build(builder); // interface object Console.WriteLine(bicycle); }
public static void Run() { Console.WriteLine($"{Environment.NewLine}*** BUILDER PATTERN ***{Environment.NewLine}"); BikeBuilder mBuilder = new MountainBikeBuilder(); BikeBuilder rBuilder = new RoadBikeBuilder(); BikeShop shop = new BikeShop(); shop.Build(mBuilder); mBuilder.Bike.DescribeBike(); shop.Build(rBuilder); rBuilder.Bike.DescribeBike(); }