Design Mode - Construction Mode - A Bowl of Beef Noodles Production Process

xiaoxiao2021-03-06  30

References: "Java and Mode" "Design Mode - Foundation of Object-Oriented Software" "C # Technology Unveiled"

Summary: Introduction to the construction mode in GOF design mode creation mode, combined with one of a life, to explain the use of construction mode and use method factory mode, create objects are directly created, and for a complex object, It is more suitable with construction mode, and it creates a complex object step by step. Basic mode is such an interface builder {// built "part" void buildpart1 (); void buildpart2 (); // Return product product getProduct ();}

Thus, the builder from this kind of inheritors can construct any complex builder according to the two construction parts defined above. / * * 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 ();} } // Define fast food store class snackshop {public snackshop () {}

// create the client add parsley beef noodle way public Noodle CreateBeefCutNoodleWithCaraway (NoodleBuilder noodleBuilder) {noodleBuilder.BuildNoodle (); noodleBuilder.BuildMeat (); noodleBuilder.BuildPureNoodle (); noodleBuilder.BuildSoup (); noodleBuilder.BuildVegetable (); Console .Writeline ("" A bowl of fragrant beef knife is made! / N "); return noodlebuilder.getnoodle ();}} // Define noodle interface interface noodlebuilder {void BuildNoodle (); void buildpurenoodle (); void buildmeat (); Void building (); noid buildsoup (); noodle getnoodle ();} // meat public class meat {public measure () {} void make () {}} // public class PureNoodle {Void Make () {}} // Vegetable PUBLIC CLASS VEGETABLE}} // Soups Public Class Soup {public Soup () {}

Void make () {}} // Define the pull surface, inheriting the PUBLIC CLASS PULLPURENOODLE: PUENOODLE {public PullPureNoodle () {Console.Writeline ("Raised / N");} public void make ()} }} // definition of noodle, it inherits from the public class CutPureNoodle pure noodles: PureNoodle {public CutPureNoodle () {} public void Make () {}} // defined vegetables public class greengrocery: Vegetable {public greengrocery () {Console. WriteLine ("Buy / N" in WriteLine); Mutton: meat {public mutton () {console.writeLine ("Mutton is done / N");} public void make () {}} // Define beef public class beef: meat {public beef () {} public void make () {}} // define noodles public class noodle {public pureNoodle pureNoodle; public Vegetable vegetable; public Soup soup; public Meat meat; public noodle () {pureNoodle = new pureNoodle (); vegetable = new Vegetable (); Soup = new soup (); meat = new meat ();}} // definition of beef noodle builder logic class BeefCutNoodleWithCarawayBuilder: NoodleBuilder {public BeefCutNoodleWithCarawayBuilder () {} private Noodle noodle; public void BuildPureNoodle () {noodle.pureNoodle = new CutPureNoodle (); Console.WriteLine ( "2 noodle well. / n ");} public void buildvegetable () {noodle.vegetable = new caway (); console.writeline (" 4. Corporate wash / n ");} public void buildmeat ()} public void buildmeat ()} public void buildmeat ()} public void building (); "1. Beef is doing / N"); ;} Public void buildnoodle () {console.writeline ("Start Be Beef Targe / N"); Noodle = New Noodle ();

} Public noodle getnoodle () {return noodle;}}} / * Run results: * Start making beef noodles

1. Beef is doing

2. The knife is finished.

3. Down soup is ready

4. Wash the coriander

A bowl of fragrant beef knife is made! * /

转载请注明原文地址:https://www.9cbs.com/read-83367.html

New Post(0)