首页 > 代码库 > Design Patterns 2 陪我一起旅行---简单工厂模式SimpleFactory

Design Patterns 2 陪我一起旅行---简单工厂模式SimpleFactory

简单工厂模式SimpleFactory

简单工厂模式又叫静态方法模式(因为工厂类定义了一个静态方法),由一个工厂类根据传入的参数决定创建出哪一种产品类的实例。

把经常改变需求的部分封装到一个中达到降低对象之间的耦合度的目的。

    //将需求经常改变的部分封装到简单工厂类SimpleFactoryCooker中    public class SimpleFactoryCooker    {        //定义根据需要type返回指定Food对象的静态方法Cook        public static Food Cook(string type)        {            //定义要返回的对象并赋值为null            Food food = null;            //需求经常改变的部分            switch (type)            {                case "西红柿":                    food = new Tomatoes();                    break;                case "土豆":                    food = new Potatoes();                    break;            }            //返回目标对象            return food;        }    }

  应用场景:

  • 当工厂类负责创建的对象比较少时可以考虑使用简单工厂模式;

  • 客户如果只知道传入工厂类的参数,对于如何创建对象的逻辑不关心时可以考虑使用简单工厂模式。