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;
        }
    }

  应用场景:

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

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

时间: 2024-11-05 13:40:17

Design Patterns 2 陪我一起旅行---简单工厂模式SimpleFactory的相关文章

简单工厂模式(SimpleFactory)

最近在研究Java设计模式,因此把自己在学习过程中的体悟记录下来,以方便以后复习使用. 1.简单工厂的本质: 选择实现,根据语义我们知道简单工厂的重点是在选择上而不是实现上. 2.何时选用简单工厂: 1.如果想要完全封装隔离具体实现,让外部只能通过接口来操作封装体,那么可以选用简单工厂,让客户端通过工厂来获取相应的接口,无须了解具体实现. 2.如果你想要把对外创建对象的职责集中管理和控制,可以选用简单工厂,一个工厂可以创建很多的,不相关的对象. 3.优缺点 优点:更好的实现了面向接口编程,并且使

01简单工厂模式SimpleFactory

一.什么是简单工厂模式 简单工厂模式属于类的创建型模式,又叫做静态 工厂方法模式.通过专门定义一个类来负责创建 其他类的实例,被创建的实例通常都具有共同的 父类. 二.模式中包含的角色及其职责 1.工厂(Creator) 角色简单工厂模式的核心,它负责实现创建所有实例的内部逻辑.工厂类可以被外界直接调用,创建所需的产品对象. 2.抽象(Product)角色 简单工厂模式所创建的所有对象的父类,它负责描述所有实例所共有的公共接口. 3.具体产品(Concrete Product) 角色简单工厂模式

C# 设计模式 简单工厂模式

设计模式(C#版)--简单工厂模式 为什么要用设计模式? 1.设计模式是前人根据经验总结出来的,使用设计模式,就相当于是站在了前人的肩膀上. 2.设计模式使程序易读.熟悉设计模式的人应该能够很容易读懂运用设计模式编写的程序. 3.设计模式能使编写的程序具有良好的可扩展性,满足系统设计的开闭原则.比如策略模式,就是将不同的算法封装在子类中,在需要添加新的算法时,只需添加新的子类,实现规定的接口,即可在不改变现有系统源码的情况下加入新的系统行为. 4.设计模式能降低系统中类与类之间的耦合度.比如工厂

Design Patterns (简单工厂模式)

文章很长很精彩,如是初学请耐心观看.(大神请绕道!) 简单工厂模式: 1.创建型模式 2.简单工厂模式概述 3.简单工厂模式的结构与实现 4.简单工厂模式的应用实例 5.创建对象与使用对象 6.简单工厂模式的简化 7.简单工厂模式的优缺点与适用环境 1.创建型模式(Creational Pattern):       关注对象的创建过程 创建型模式对类的实例化过程进行了抽象,能够将软件模块中对象的创建和对象的使用分离,对用户隐藏了类的实例的创建细节 创建型模式描述如何将对象的创建和使用分离,让用

大白话简单工厂模式 (Simple Factory Pattern)

大白话简单工厂模式 (Simple Factory Pattern) 从买车经历说起 毕业两年,码农张小两口无法忍受挤公交,凌晨起床抢火车票的痛苦,遂计划买车.逛了多家4S店,最终定下日产某车型的轿车.4S店接受订单后,向工厂说明车型,工厂随后进行汽车制造,运输到4S店中再到了小两口的手上,小两口终于成了有车一族. 仔细分析,4S销售模式即为典型的简单工厂模式.下面从代码的角度进行分析. 无工厂模式 首先,我们先分析4S店最初的模式(企业个人作坊阶段,无工厂).4S店卖车首先要有车,这里只取日产

(一)简单工厂模式

(一)简单工厂模式 作者:林子 时间:2014年8月 出处:http://blog.csdn.net/u013011841 声明:欢迎指出错误 1.为什么学习设计模式? 设计模式(Design pattern)是一套被重复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更easy被他人理解.保证代码可靠性. 毫无疑问,设计模式于己于他人于系统都是多赢的.设计模式使代码编制真正project化.设计模式是软件project的基石脉络.如同大厦的结构一样.

C#基础之简单工厂模式和单例模式

设计模式(Design pattern):指的是一种大多数人反复使用的代码设计经验. 作用:代码复用.易读性.保证代码可靠性. 一.简单工厂模式 用法:创建一个工厂类(命名习惯以Factiory结尾),一个静态的带参数(根据不同的参数返回不同的子类对象)的父类类型的方法. public class FunctionFactory { public static FatherClass Function(string str) { FatherClass fc = null; ... return

iOS开发-简单工厂模式

设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性.概念很长,iOS开发中最常遇到的有单例模式,观察者模式(KVO),简单工厂模式其实在开发中也非常常见,就是由工厂类根据传入的参数,动态决定应该创建出对应的产品类的实例. 基础概念 举一个生活的例子是我们有各种中字开头的银行卡,我们每天都会消费,消费的时候每个银行卡提示不同的信息,我们可以先抽象出来一个银行卡类: @inter

设计模式02_简单工厂模式

本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/46400991 本文主要介绍简单工厂模式,主要通过代码的形式进行展示,对于程序员来说我想观看代码进行理解比文档来的直接和快些. 简单工厂模式(simple factory)是类的创建模式,又叫静态工厂方法(static factory method)模式. 简单工厂模式就是由一个工厂类根据传入的参数决定创建哪一种的产品类. 通过以下代码对简单工厂模式进行理解