Design Mode - Construction Mode Reference: "Java and Mode" "Design Mode - Foundation" "C # Technique" Abstract: Introduction to the construction mode in GOF design mode creation mode, combined with a life One, to explain the use of construction mode and use method factory mode, creating objects is created directly, and for a complex object, it is more suitable with construction mode, and it creates a complex object step by step. The basic mode is such an interface builder {// built "part" void buildpart1 (); void buildpart2 (); // Return product product getProduct ();} This inherited constructor, can be based on the two definitions Construct a part method to construct any complex builder.
/ * * Created by SharpDevelop. * User: Administrator * Date: 2004-12-02 * Time: 19:57 * * To change this Template Use Tools | Options | Coding | Edit Standard Headers. * / Use system; namespace builder { class mainclass {public static void Main (string [] args) {SnackShop snackShop = new SnackShop (); NoodleBuilder bcnwc = new BeefCutNoodleWithCarawayBuilder (); Noodle noodle = snackShop.CreateBeefCutNoodleWithCaraway (bcnwc); Console.ReadLine ();}} // the definition of fast food restaurants class SnackShop {public SnackShop () {} // create a client add parsley beef noodle way public Noodle CreateBeefCutNoodleWithCaraway (NoodleBuilder noodleBuilder) {noodleBuilder.BuildNoodle (); noodleBuilder.BuildMeat (); noodleBuilder.BuildPureNoodle (); noodleBuilder .Buildsoup (); noidebuilder.buildvegetable (); console.writeline ("A bowl of fragrant beef knife cut into flavors! / N"); return noodlebuilder.getNoodle ();}} // Define Noodle interface interface iOodlebuilder { Void BuildNoodle (); void buildpurenoodle (); void buildmeat (); void buildvegetable (); void buildsoup (); Noodle getnoodle ();} // meat public class meat {public meat () {} void make () {}} // public class pURENOODLE {void make () {}} // Vegetable PUBLIC CLASS VEGETABLE {Void make () {}} // soup public class Soup {public source () {} void make () {}} // Define pull surface from pugic classes PULLPURENOODLE: PureNoodle {public pullpurenoodle () {Console.Writeline ("Pale face is done / N");} public void make () {}} // Define the knife face, it inherits the PUBLIC CTPURENOODLE: PureNoodle {public cutpurenoodle () {public void makenoodle ()} public void makenoodle: PUENODE () {}} // Define the greens of the Chip PUBLIC CLASS GREENGROCERY: VEGETABLE {public GreenRocery () {Console.writeline ("Buy / N");