HeadFirst Design Pattern 读书摘记(3)-- 工厂方法模式

    工厂方法模式:定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。
    工厂方法遵循的设计原则是Dependency Inversion Principle即依赖倒置原则:要依赖抽象,不要依赖具体类。书中提到了遵循依赖倒置原则的几个指导方针:1、变量不可以持有具体类的引用;2、不要让类派生自具体类;3、不要覆盖基类中已经实现的方法。
    下面贴上我用C#改写的书中的源代码:

using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;

namespace FactoryMethod
{

    
比萨店类
    
pizza本身
    
public  class Test
    
{
        
public  static void Main(string[] args)
        
{
            
//建立两个不同的店
            PiazzaStore nyStore = new NYPizzaStore();
            PiazzaStore chicagoStore 
= new ChicagoPizzaStore();

            Pizza pizza 
= nyStore.orderPizza("cheese");
            System.Console.WriteLine(
"The First Man ordered a " + pizza.Name);

            pizza 
= chicagoStore.orderPizza("cheese");
            System.Console.WriteLine(
"The Second Man ordered a "+pizza.Name);

            System.Console.ReadLine();
        }

    }

}

posted @ 2008-03-03 09:31  collum  阅读(190)  评论(0)    收藏  举报