static void Main(string[] args) { //Standard builder pattern using Console.WriteLine("BMW car builder:"); var bmwBuilder = new BMWBuilder(); bmwBuilder.BuildFrame(); bmwBuilder.BuildEngine(); bmwBuilder.BuildWheels(); bmwBuilder.BuildSafety(); Console.WriteLine(bmwBuilder.GetCar()); //Builder pattern with fabric pattern Console.WriteLine("\nAUDI regular car builder:"); var audiRegular = new RegularCar(new AudiBuilder()); Console.WriteLine(audiRegular.Construct()); Console.WriteLine("\nBMW luxury car builder:"); var bmwLuxury = new LuxuryCar(new BMWBuilder()); Console.WriteLine(bmwLuxury.Construct()); Console.ReadLine(); }
public static BMWModel GetDBMWModel() { string[] sequence = new string[] { "start" }; BMWBuilder bmwBuilder = new BMWBuilder(); bmwBuilder.SetSequence(sequence); return((BMWModel)bmwBuilder.GetCarModel()); }