Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- public class Test
- {
- class Car
- {
- public string Chasis {get;set;}
- public string Wheels {get;set;}
- public string Seats {get;set;}
- }
- interface ICarBuilder
- {
- void BuildChasis();
- void AddWheels();
- void AddSeats();
- Car GetBuiltCar();
- }
- interface IDirector
- {
- void BuildCar(ICarBuilder builder);
- }
- class ToyotaBuilder : ICarBuilder
- {
- private Car corolla = new Car();
- public void BuildChasis()
- {
- corolla.Chasis = "Toyota Corolla";
- }
- public void AddWheels()
- {
- corolla.Wheels = "Alloy";
- }
- public void AddSeats()
- {
- corolla.Seats = "Corduroy";
- }
- public Car GetBuiltCar()
- { return corolla; }
- }
- class Toyota : IDirector
- {
- public void BuildCar(ICarBuilder cb)
- {
- cb.BuildChasis();
- cb.AddWheels();
- cb.AddSeats();
- }
- }
- public static void Main()
- {
- Console.WriteLine("Hello World");
- var tb = new ToyotaBuilder();
- var td = new Toyota();
- td.BuildCar(tb);
- var car = tb.GetBuiltCar();
- Console.WriteLine("Built {0} with {1} wheels and {2} seats!"
- , car.Chasis, car.Wheels, car.Seats);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement