美文网首页
创建性模式-工厂

创建性模式-工厂

作者: 查无此人_chazz | 来源:发表于2018-05-13 14:18 被阅读0次

标签(空格分隔): 简单工厂模式 工厂模式 抽象工厂模式


1、简单工厂模式:
简单工厂模式,由父类决定,初始化对象的类型。
它主要有三个参与者:抽象角色(父类),具体产品角色和工厂角色。其中由工厂角色(负责返回抽象角色)根据传入的参数来决定返回的具体产品角色。
简单工厂模式最大的优点在于,将具体初始化对象的逻辑转移到工厂中,客户端只需要提供参数给工厂类就能得到对应的实例化相关的类,去除了客户端对具体产品的依赖。


2、工厂模式:
工厂模式,定义一个创建对象的接口, 让子类决定实例化哪一个类, 工厂方法使一个类的实例化延伸到了子类
由于简单工厂模式是由工厂类来决定实例化哪个对象,那每次增加/修改功能的时候都需要调整对应工厂类的逻辑判断代码,违反了开发-封闭原则,所以工厂方法将实例化的判断衍生到子类中,来解决这个问题。
工厂模式解决的是客户端开闭原则问题,当有功能增加的时候只需要增加对应的子类就能解决问题,但是逻辑判断的问题还是存在的,只不过将对应的判断逻辑转移到客户端位置(但是因为涉及到需求变动,客户端的代码修改是必须的,所以并不存在开闭原则问题)。


3、抽象工厂模式:
抽象工厂模式,提供一个可以创建一系列相关或互相一路来对象的接口,而无须指定它们具体的类型。
抽象工厂模式中,应该存在多个抽象产品类,每个抽象产品类可以派生出多个具体产品类。一个抽象工厂类,可以派生出多个具体工厂类。 每个具体工厂类可以创建多个具体产品类的实例。
抽象工厂模式可以看作是对工厂模式的二次包装,即生成具有工厂模式行为的类的一种工厂模式(这里的工厂模式可以用1、简单工厂/2、工厂模式)。也就是说,抽象工厂模式,实际上是用来生成工厂的工厂模式,当业务场景单一,且不会发生变化的极端情况下,抽象工厂模式≈工厂模式。

相关文章

  • 目录(持续更新)

    一、创建性模式(对象模式) 创建性模式-工厂创建性模式-建造者模式创建性模式-单例模式&多例模式创建性模式-原型模...

  • Android设计模式(一)-工厂模式

    工厂模式是创建性模式,总共分为三种:简单工厂模式,工厂方法模式,抽象工厂模式 什么是工厂模式? 定义一个用户创建对...

  • 设计模式(一)

    设计模式 [TOC] 创建型模式 工厂方法模式 工厂方法模式的用意是定义一个创建产品对象的工厂接口,将实际创建性工...

  • 设计模式

    创建型模式 Factory--工厂模式 简单工厂模式 创建工厂对象,然后通过条件获取相应的对象,这种方式健壮性差,...

  • 设计模式之 - 工厂模式

    工厂模式属于创建型模式 工厂模式 简单工厂模式工厂方法模式抽象工厂模式 三种模式的命名迷惑性很强,但功能差别巨大,...

  • 创建性模式-工厂

    标签(空格分隔): 简单工厂模式 工厂模式 抽象工厂模式 1、简单工厂模式:简单工厂模式,由父类决定,初始化对象的...

  • 面向对象的23种设计模式

    创建性模式 工厂方法模式:调用方法,用方法创建对象 抽象工厂模式 单列模式:一个类只有一个实例...

  • 设计模式简介

    分类 创建型模式:单例模式、工厂方法模式、抽象工厂模式、创建者模式、原型模式。 结构性模式:适配器模式、桥接模式、...

  • PHP 《16 个 PHP 设计模式详解》实验报告

    创建型模式简单工厂模式(静态工厂方法模式)工厂方法模式抽象工厂模式(Kit模式)单例模式 结构性模式适配器模式桥接...

  • [Python-设计模式] 创建型模式- 工厂方法模式

    创建型模式 创建型模式提供了创建对象的机制, 能够提升已有代码的灵活性和可复用性。 工厂方法模式 工厂方法模式是一...

网友评论

      本文标题:创建性模式-工厂

      本文链接:https://www.haomeiwen.com/subject/jcrldftx.html