设计模式学习-工厂模式,抽象工厂,原型模式,构建器

本文深入解析四种常见的对象创建模式:工厂模式、抽象工厂模式、原型模式和构建器模式。工厂模式通过多态实现对象创建的解耦,适用于单一对象变化;抽象工厂模式关注系列对象的创建,适用于同系列对象的变化;原型模式利用对象拷贝快速创建新对象,适合保留状态变化;构建器模式则将复杂对象的构建与表示分离,确保创建过程稳定。这四种模式在软件设计中起到关键作用,帮助开发者更好地管理和创建对象。
摘要由CSDN通过智能技术生成

设计模式学习-工厂模式,抽象工厂,原型模式,构建器

四种模式构建对象特点突出,可归结为对象创建模式

工厂模式(Factory)

  1. 定义
  • 定义一个用于创建对象的接口,让子类决定实例化,实例化延迟。
  1. 通俗概括
  • 通过多态特性,让用户利用子类创建对象,达到某方法里与具体类解耦目的;主要解决“单个对象”需求变化,要求创建方法/参数相同
  1. 模式示意图
    在这里插入图片描述

抽象工厂(Abstract Factory)

  1. 定义
  • 提供一个接口,让该接口负责创建一系列"相关或相互依赖的对象",无需指定他们具体的类
  1. 通俗概括
  • 对于同类别互相依赖的对象,直接封装为一个大工厂,去创建同系列对象;对不同系列更灵活,但对系列内对象变化不便
  1. 模式示意图
    在这里插入图片描述

原型模式(Prototype)

  1. 定义
  • 使用原型实例指定创建对象的种类,然后通过拷贝这些原型来创建新的对象
  1. 通俗概括
  • 直接在抽象基类中定义深拷贝函数,通过深拷贝(不同)自身创建对象;原型模式在复杂状态变化后,可以保留现状态下的深拷贝新对象
  1. 模式示意图
    在这里插入图片描述

构建器(Builder)

  1. 定义
  • 将一个复杂对象的构建于其表示分离,使得同样的构建过程可以创建不同的表示
  1. 通俗概括
  • 等同于对象创建下的模板方法,构建步骤稳定,但对应步骤部分变化
  1. 模式示意图
    在这里插入图片描述

四者区别

  • 工厂模式适用于单一对象变化;例如 电话卡用 移动;电信;联通
  • 抽象工厂适用于单一系列变化;例如 开汽车需要启动和出发; 开火车也需要启动和出发。 系列指汽车和火车
  • 原型模式适用于内部变化后需要保留状态时使用;例如 再获取原材料后加工为成品1,需要一个新的成品1去打造成品2,一个新的成品1去打造成品3
  • 构建器适用于类似模板流程下创建对象时;例如 我需要一把椅子,现有木头对象,需要经过稳定流程生产一个椅子
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值