示例#1
0
        static void Main(string[] args)
        {
            /*
             * Builder builder = new ConcreteBuilder1(); //可通过配置文件实现
             * Director director = new Director(builder);
             * Product product = director.Construct();
             * Console.WriteLine(product.PartA);
             * Console.WriteLine(product.PartB);
             * Console.WriteLine(product.PartC);
             * Console.Read();
             */

            ActorBuilder ab;         //针对抽象建造者编程
            //读取配置文件
            string builderType = ConfigurationManager.AppSettings["builder"];

            //反射生成对象
            ab = (ActorBuilder)Assembly.Load("BuilderSample").CreateInstance(builderType);

            ActorController ac = new ActorController();
            Actor           actor;

            actor = ac.Construct(ab);         //通过指挥者创建完整的建造者对象

            Console.WriteLine("{0}的外观:", actor.Type);
            Console.WriteLine("性别:{0}", actor.Sex);
            Console.WriteLine("面容:{0}", actor.Face);
            Console.WriteLine("服装:{0}", actor.Costume);
            Console.WriteLine("发型:{0}", actor.Hairstyle);
            Console.Read();
        }
        static void Main(string[] args)
        {
            ActorBuilder ab;         //针对抽象建造者编程
            //读取配置文件
            string builderType = ConfigurationManager.AppSettings["builder"];

            //反射生成对象
            ab = (ActorBuilder)Assembly.Load("BuilderSample").CreateInstance(builderType);

            ActorController ac = new ActorController();
            Actor           actor;

            actor = ac.Construct(ab);         //通过指挥者创建完整的建造者对象

            Console.WriteLine("{0}的外观:", actor.Type);
            Console.WriteLine("性别:{0}", actor.Sex);
            Console.WriteLine("面容:{0}", actor.Face);
            Console.WriteLine("服装:{0}", actor.Costume);
            Console.WriteLine("发型:{0}", actor.Hairstyle);
            Console.Read();
        }