第2章 简单工厂模式(Sample Factory)

原文 第2章
简单工厂模式(Sample Factory)

一般用到的场景:对象多次被实例引用,切有可能会发生变化

拿我们的简单三层举例子

先定义dal层





1

2

3

4

5

6

7

8

    class Dal

    {

        public void Delete()

        

         //...

         }

       

    }

工厂类





1

2

3

4

5

6

7

8

9

10

    class Factory

    {

        //这样掉的好处是  当dal层发生变化的时候不需要去每个调用的地方修改对应的实例,只需要在工厂里面修改对应的实例就行。

        //例如Dal的名字换成DAL  这个时候只需要改动工厂里面对应的实例名称即可。

        public static Dal CreateInstance()

       {

 

           return new Dal();

       }

    }

在BLL层中实例化Dal层对象





1

2

3

4

    class Bll

    {

        Dal dal = Factory.CreateInstance();

    }

这样的好处是当dal层名称发生变化时,只需要改动一处即可,调用者无需关系调用的对象!

优点:可以提高程序的扩展性,减少修改量!

当然简单工厂有的时候并不能很好的满足我们的需求,后续还会讲到抽象工厂。

设计模式系列文章入口:http://www.diyibk.com/post/39.html

0

您可能也喜欢:

抽象工厂模式

职责链模式

备忘录模式

策略模式

中介者模式

无觅关联推荐[?]

除非注明:第一博客文章均为原创,转载请以链接的形式注明本文地址


    本文地址:http://www.diyibk.com/post/44.html

时间: 2024-10-05 17:58:37

第2章 简单工厂模式(Sample Factory)的相关文章

简单工厂模式( Simple Factory Pattern )

1. 简单工厂模式( Simple Factory Pattern ) 1.1. 模式动机 考虑一个简单的软件应用场景,一个软件系统可以提供多个外观不同的按钮(如圆形按钮.矩形按钮.菱形按钮等), 这些按钮都源自同一个基类,不过在继承基类后不同的子类修改了部分属性从而使得它们可以呈现不同的外观,如果我们希望在使用这些按钮时,不需要知道这些具体按钮类的名字,只需要知道表示该按钮类的一个参数,并提供一个调用方便的方法,把该参数传入方法即可返回一个相应的按钮对象,此时,就可以使用简单工厂模式. 1.2

设计模式之简单工厂模式Simple Factory(四创建型)

工厂模式简介. 工厂模式专门负责将大量有共同接口的类实例化 工厂模式可以动态决定将哪一个类实例化,不必事先知道每次要实例化哪一个类. 工厂模式有三种形态: 1.简单工厂模式Simple Factory,又称静态工厂方法模式 2.工厂方法模式Factory Method,又称多态性工厂模式 3.抽象工厂模式Abstract Factory,又称工具箱模式 2.什么是简单工厂模式 简单工厂模式是类的创建模式.是由一个工厂对象决定创建出哪一种产品类的实例,是不同的工厂方法模式的一个特殊实现.由一个工厂

设计模式在cocos2d-x中的使用--简单工厂模式(Simple Factory)

什么是简单工厂模式? 从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类. 简单工厂模式在cocos2d-x中怎么用,我们通过下面的小例子来了解一下. 假如我们在开发一款类似魔兽的RPG游戏,在游戏中会出现很多种族的角色,如:人族.兽族. 这些种族一般都会定义为一个类,如果兽族Orc类,人族Human类. 兽族.人族两个类都同样属于种族,那么我们可以

设计模式之简单工厂模式(Simply Factory)摘录

从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一.简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例.简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现. 简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例. 该模式中包含的角色及其职责:(1).工厂(Creator)角色:简单工厂模式的

第1章 简单工厂模式

应用层: using System; using System.Collections.Generic; using System.Text; using OperationLibrary; namespace 计算器控制台 { class Program { static void Main(string[] args) { try { Console.Write("请输入数字A:"); string strNumberA = Console.ReadLine(); Console.

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

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

Net设计模式实例之简单工厂模式(Simple Factory Pattern)

一.简单工厂模式简介(Bref Introduction) 简单工厂模式(Simple Factory Pattern)的优点是,工厂类中包含了必要的逻辑判断,根据客户端的选择条件动态实例化相关的类,对于客户端来说,去除了与具体产品的依赖 二.解决的问题(What To Solve) 客户实例化对象时不需要关心该对象是由哪个子类实例化的. 三.简单工厂模式分析(Analysis) 1.简单工厂模式结构 IProduct接口:抽象产品类 ConcreteProduct类:产品类的具体实现 Simp

大话设计模式-第一章-简单工厂模式

一.UML图 二.包含的角色 简单工厂模式包含三个角色:(1)工厂类Factory(2)抽象产品类AbstractProduct(3)具体产品类ConcreteProduct. (1)Factory:工厂类是用来制造产品的.因此,在Factory中有一个用于制造产品的Create函数或者Generate函数之类的函数.这个函数能够根据"标识符"的不同生成不同的ConcreteProduct,当然这些ConcreteProduct都是继承自AbstractProduct的. (2)Abs

C#设计模式(2)——简单工厂模式(Factory )

我们通过 Factory 创建对象不同的对象. 例如:如果创建一个汽车的接口,通过 工厂Factory 创建实现接口的对象,根据我们的选择来创建不同的对象. 创建汽车接口 /// <summary> /// 简单工厂模式 /// </summary> public interface IAutoCarMake { /// <summary> /// 创建汽车 /// </summary> void CreateAutoCar(); } 创建两个派生类,分别实