美文网首页
工厂模式(四)—工厂方法

工厂模式(四)—工厂方法

作者: 奔跑的佩恩 | 来源:发表于2022-08-04 10:26 被阅读0次

前言

在之前我们已经讲到了工厂模式之简单工厂的使用,大家有兴趣的话,可参考以下文章
工厂模式(一)—工厂模式简介
工厂模式(二)—简单工厂
工厂模式(三)—简单工厂优化(静态调用)
这节我们来讲下工厂方法方法模式
今天涉及内容:

  1. 工厂方法模式的定义
  2. 为什么要使用工厂方法模式
  3. 工厂方法模式的使用

一. 工厂方法模式的定义

这个其实在第一节已经讲过了,其描述如下:
工厂方法模式:定义一个创建对象的接口,由其子类来决定要实例化的类是哪一个,工厂方法模式将实例化延迟到子类中
描述比较生硬,大体意思是,在简单工厂中我们的工厂是直接建对象的,而在工厂方法中,我们是提供一个对象类别的方法,然后让子类去实现。
为什么这样设计呢?下面接着讲。

二. 为什么要使用 工厂方法模式

简单工厂中,我们不难看出,只要我们有新的对像要创建,我们必须去修改对象创建工厂CarFactory的代码,这其实是违背代码设计的开闭原则。什么是开闭原则呢?简单来说就是
写过的代码具有极强的扩展性,后来者只能在我写的代码基础上扩展,而不要修改我的代码
这种设计原则的初衷是避免修改已稳定的代码而带来不稳定性。
简单工厂的设计是违背开闭原则的,所以才产生工厂方法模式来规避这个问题。
工厂方法模式采用的优化方式是将简单工厂的直接创建对象变成提供创建对象的接口,由后来者去确定具体的对象,从而避免修改先行者已写好的代码。

三. 工厂方法模式的使用

与之前一样,场景仍是奥迪车奔驰车取名。
那么第一步要建要做的事的接口,即取名接口:

相关文章

  • 设计模式-3种工厂模式

    工厂模式包括:简单工厂模式,工厂方法模式,抽象工厂模式 简单工厂模式 工厂方法根据参数直接创建实例:工厂->产品 ...

  • 设计模式-工厂模式

    工厂模式概念 实例化对象,用工厂方法代替new操作。工厂模式包括工厂方法模式和抽象工厂模式。抽象工厂模式是工厂模式...

  • 第一章2.0工厂- 基础类准备

    2.1工厂-简单工厂模式2.2工厂-工厂方法模式2.3工厂-抽象工厂模式

  • 设计模式 工厂模式

    工厂模式 工厂模式三大类1、简单工厂模式(静态工厂方法模式)2、工厂方法模式3、抽象工厂模式(Kit模式) 简单工...

  • 设计模式-工厂方法模式

    1、工厂方法模式(Factory Method) 工厂方法模式分为三种: 普通工厂模式 多个工厂模式 静态工厂模式...

  • 设计模式(五)工厂方法模式

    导读:前文设计模式(四)简单工厂模式介绍了简单工厂模式,本篇开始介绍工厂方法模式,继续优化简单工厂模式,更好的满足...

  • 2021-11-16 - 学习记录

    设计模式学习:创建型:工厂(工厂方法,抽象工厂),建造者,单例,原型 设计模式:工厂模式 简单工厂 工厂方法 抽象工厂

  • 工厂模式

    工厂模式 就是工厂---生产-->产品 在设计模式中,分为 简单工厂模式, 工厂方法模式,抽象工厂模式. 工厂模式...

  • 工厂模式

    简介:工厂模式大体分为 简单工厂,工厂方法,抽象工厂等三种模式。工厂方法模式也可以称为工厂模式。简单工厂进阶变成工...

  • python设计模式 - 工厂模式之工厂方法

    python 环境 工厂方法模式简介 工厂方法模式Factory Method,又称多态性工厂模式。在工厂方法模式...

网友评论

      本文标题:工厂模式(四)—工厂方法

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