public void ConstructInSequence(IPhoneBuilder phoneBuilder)
 {
     phoneBuilder.BuildBattery();
     phoneBuilder.BuildOs();
     phoneBuilder.BuildScreen();
     phoneBuilder.BuildStylus();
 }
Example #2
0
        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.
        }
Example #3
0
 public void Construct(IPhoneBuilder phoneBuilder)
 {
     phoneBuilder.BuildBattery();
     phoneBuilder.BuildOS();
     phoneBuilder.BuildScreen();
     phoneBuilder.BuildStylus();
 }
Example #4
0
 /// <summary>
 /// Constrct phone.
 /// </summary>
 /// <param name="phoneBuilder"></param>
 public void Construct(IPhoneBuilder phoneBuilder)
 {
     phoneBuilder.BuildBattery();
     phoneBuilder.BuildOperatingSystem();
     phoneBuilder.BuildScreen();
     phoneBuilder.BuildStylus();
 }
Example #5
0
 public MobilePhone Construct(IPhoneBuilder phoneBuilder)
 {
     phoneBuilder.BuildBattery();
     phoneBuilder.BuildOS();
     phoneBuilder.BuildScreen();
     phoneBuilder.BuildStylus();
     return(phoneBuilder.Construct());
 }
Example #6
0
        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();
 }
Example #8
0
        /// <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());
        }
Example #9
0
        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());
        }
Example #10
0
        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());
        }
Example #11
0
        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());
        }
Example #13
0
        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("");
        }
Example #14
0
        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());
        }
Example #15
0
        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();
        }
Example #17
0
 public void Build(IPhoneBuilder phoneBuilder)
 {
     phoneBuilder.BuildBattery();
     phoneBuilder.BuildOS();
     phoneBuilder.BuildScreen();
     phoneBuilder.BuildStylus();
 }
Example #18
0
 public void Construct(IPhoneBuilder phoneBuilder)
 {
     phoneBuilder.BuildOS ();
     phoneBuilder.BuildScreen ();
     phoneBuilder.BuildStylus ();
 }
Example #19
0
 public void Construct(IPhoneBuilder phoneBuilder)
 {
     phoneBuilder.BuildDispaly();
     phoneBuilder.BuildBattery();
 }