public void ConstructInSequence(IPhoneBuilder phoneBuilder) { phoneBuilder.BuildBattery(); phoneBuilder.BuildOs(); phoneBuilder.BuildScreen(); phoneBuilder.BuildStylus(); }
static void Main(string[] args) { //Builder pattern creates concrete implementation //Defines an instance for creating an object but //Allows subclasses to decide which class to //Instanciate //Refers to the newly created oject through a //common interface Director newManufacturer = new Director(); //Get Builder Class Ready: IPhoneBuilder phoneBuilder = null; //Creating an Android Phone using the builder pattern: phoneBuilder = new AndroidPhoneBuilder(); newManufacturer.Construct(phoneBuilder); Console.WriteLine("A new phone has been made: \n\n{0}", phoneBuilder.Phone.ToString()); //Creating a Windows Phone using the builder pattern: phoneBuilder = new WindowsPhoneBuilder(); newManufacturer.Construct(phoneBuilder); Console.WriteLine("A new phone has been created: \n\n{0}", phoneBuilder.Phone.ToString()); Console.ReadLine(); //Now if we create more Products only a ConcreteBuilder would be needed and the rest of the //CodeBase will remain the same. }
public void Construct(IPhoneBuilder phoneBuilder) { phoneBuilder.BuildBattery(); phoneBuilder.BuildOS(); phoneBuilder.BuildScreen(); phoneBuilder.BuildStylus(); }
/// <summary> /// Constrct phone. /// </summary> /// <param name="phoneBuilder"></param> public void Construct(IPhoneBuilder phoneBuilder) { phoneBuilder.BuildBattery(); phoneBuilder.BuildOperatingSystem(); phoneBuilder.BuildScreen(); phoneBuilder.BuildStylus(); }
public MobilePhone Construct(IPhoneBuilder phoneBuilder) { phoneBuilder.BuildBattery(); phoneBuilder.BuildOS(); phoneBuilder.BuildScreen(); phoneBuilder.BuildStylus(); return(phoneBuilder.Construct()); }
static void Main(string[] args) { Manufacturer newManufacturer = new Manufacturer(); IPhoneBuilder phoneBuilder, phoneBuilder2 = null; phoneBuilder = new AndroidPhoneBuilder(); phoneBuilder2 = new WindowsPhoneBuilder(); newManufacturer.Construct(phoneBuilder); newManufacturer.Construct(phoneBuilder2); Console.WriteLine("A new Phone built:\n\n{0}", phoneBuilder.Phone.ToString()); Console.WriteLine("A new Phone built:\n\n{0}", phoneBuilder2.Phone.ToString()); }
public void BuildMobilePhone(IPhoneBuilder phoneBuilder) { phoneBuilder.AddOS(); phoneBuilder.AddInternalMemory(); phoneBuilder.AddWeight(); phoneBuilder.AddBattery(); phoneBuilder.AddWirelessCommunication(); phoneBuilder.AddConnectivity(); phoneBuilder.AddConnectivity(); phoneBuilder.AddCamera(); phoneBuilder.AddColour(); phoneBuilder.AddScreenType(); }
/// <summary> /// When we have an application that need to create an object which has to be constructed using /// many different objects, we find our client code cluttered with the details of the various /// Part objects that needs to be assembled together to create the resulting object. /// Separate the construction of a complex object from its representation so that the same /// construction process can create different representations. /// </summary> public static void Run() { Manufacturer manufacturer = new Manufacturer(); IPhoneBuilder phoneBuilder = null; phoneBuilder = new AndroidPhoneBuilder(); // Will Construct Android Phone manufacturer.Construct(phoneBuilder); Console.WriteLine("A new Phone is built: " + phoneBuilder.Phone.ToString()); phoneBuilder = new WindowsPhoneBuilder(); manufacturer.Construct(phoneBuilder); Console.WriteLine("A new Phone is built: " + phoneBuilder.Phone.ToString()); }
private static void BuilderPattern() { Manufacturer manufacturer = new Manufacturer(); IPhoneBuilder phoneBuilder = null; phoneBuilder = new AndroidPhoneBuilder(); manufacturer.Construct(phoneBuilder); Console.WriteLine("A new Phone built:\n\n{0}", phoneBuilder.Phone.ToString()); phoneBuilder = new WindowsPhoneBuilder(); manufacturer.Construct(phoneBuilder); Console.WriteLine("A new Phone built:\n\n{0}", phoneBuilder.Phone.ToString()); }
public MainBuilder() { Manufacturer newManufacturer = new Manufacturer(); IPhoneBuilder phoneBuilder = null; phoneBuilder = new AndroidPhoneBuilder(); newManufacturer.Construct(phoneBuilder); Console.WriteLine("A new Phone built:\n\n{0}", phoneBuilder.Phone.ToString()); phoneBuilder = new WindowsPhoneBuilder(); newManufacturer.Construct(phoneBuilder); Console.WriteLine("A new Phone built:\n\n{0}", phoneBuilder.Phone.ToString()); }
static void Main(string[] args) { Fabricante fab = new Fabricante(); ICelular celularBuild = new AndroidBuilder(); fab.Construtor(celularBuild); Console.WriteLine(celularBuild.Celular.Nome.ToUpper()); ICelular celularBuild2 = new IPhoneBuilder(); fab.Construtor(celularBuild2); Console.WriteLine(celularBuild2.Celular.Nome.ToUpper()); }
public void MobilePhone_Android_BuilderPattern_Test() { // Arrange Manufacturer newManufacturer = new Manufacturer(); IPhoneBuilder phoneBuilder = null; // Lets have the Builder class ready // Creating an Android phone phoneBuilder = new AndroidPhoneBuilder(); newManufacturer.Construct(phoneBuilder); Debug.WriteLine("A new Phone built:\n\n{0}", phoneBuilder.Phone.ToString()); // Now let us create a Windows Phone phoneBuilder = new WindowsPhoneBuilder(); newManufacturer.Construct(phoneBuilder); Debug.WriteLine("A new Phone built:\n\n{0}", phoneBuilder.Phone.ToString()); }
public static void Perform() { Manufacturer manufacturer = new Manufacturer(); IPhoneBuilder phoneBuilder = null; phoneBuilder = new AndriodPhoneBuilder(); manufacturer.Construct(phoneBuilder); Console.WriteLine("\n\nNew phone build : \n" + phoneBuilder.Phone.ToString()); phoneBuilder = new WindowsPhoneBuilder(); manufacturer.Construct(phoneBuilder); Console.WriteLine("\n\nNew phone build : \n" + phoneBuilder.Phone.ToString()); phoneBuilder = new SymbionPhoneBuilder(); manufacturer.Construct(phoneBuilder); Console.WriteLine("\n\nNew phone build : \n" + phoneBuilder.Phone.ToString()); Console.WriteLine(""); }
static void Main(string[] args) { // Lets create the Director first Manufacturer newManufacturer = new Manufacturer(); // Lets have the Builder class ready IPhoneBuilder phoneBuilder = null; // Now let us create an android phone phoneBuilder = new AndroidPhoneBuilder(); newManufacturer.Construct(phoneBuilder); Console.WriteLine("A new Phone built:\n\n{0}", phoneBuilder.Phone.ToString()); // Now let us create a Windows Phone phoneBuilder = new WindowsPhoneBuilder(); newManufacturer.Construct(phoneBuilder); Console.WriteLine("\nA new Phone built:\n\n{0}", phoneBuilder.Phone.ToString()); }
static void Main(string[] args) { Manufacturer newManufacturer = new Manufacturer(); // LETS HAVE THE BUILDER CLASS READY IPhoneBuilder phoneBuilder = null; // NOW LET US CREATE AN ANDROID PHONE phoneBuilder = new AndroidPhoneBuilder(); newManufacturer.ConstructInSequence(phoneBuilder); Console.WriteLine(phoneBuilder.Phone); Console.WriteLine(); // NOW LET US CREATE A WINDOWS PHONE phoneBuilder = new WindowsPhoneBuilder(); newManufacturer.ConstructInSequence(phoneBuilder); Console.WriteLine(phoneBuilder.Phone); Console.ReadKey(); }
private static void Main(string[] args) { // http://www.codeproject.com/Articles/470476/Understanding-and-Implementing-Builder-Pattern-in // Cria o primeiro diretor var manufacture = new Manufacture(); // Prepara a classe Builder IPhoneBuilder phoneBuilder = null; // Criando um android phoneBuilder = new AndroidPhoneBuilder(); manufacture.Contruct(phoneBuilder); Console.WriteLine("[x] Um novo telefone foi construido: \n{0}", phoneBuilder.Phone.ToString()); // Criando um windows phone phoneBuilder = new WindowsPhoneBuilder(); manufacture.Contruct(phoneBuilder); Console.WriteLine("\n[x] Um novo telefone foi construido: \n{0}", phoneBuilder.Phone.ToString()); Console.Read(); }
public void Build(IPhoneBuilder phoneBuilder) { phoneBuilder.BuildBattery(); phoneBuilder.BuildOS(); phoneBuilder.BuildScreen(); phoneBuilder.BuildStylus(); }
public void Construct(IPhoneBuilder phoneBuilder) { phoneBuilder.BuildOS (); phoneBuilder.BuildScreen (); phoneBuilder.BuildStylus (); }
public void Construct(IPhoneBuilder phoneBuilder) { phoneBuilder.BuildDispaly(); phoneBuilder.BuildBattery(); }