【设计模式:工厂模式】

目录

工厂模式的特点:

工厂模式种类

简单工厂模式:

简单工厂模式的创建步骤:

简单工厂代码:

[工厂模式 :](#工厂模式 :)

特点:

工厂模式代码:

抽象工厂模式

抽象工厂的主要组成部分:

抽象工厂的优点:

抽象工厂模式代码:


工厂模式的特点:

  1. 便于维护
  2. 解耦合高
  3. 流程复杂

工厂模式种类

简单工厂模式:

简单工厂模式的创建步骤:

  1. 创建一个工厂类,一般在简单工厂中,只有一个工厂类
  2. 在工厂类中添加一个公共的成员函数(工厂函数)以此来创建对象
  3. 创建一个工厂类对象,通过该对象调用该类中的工厂函数,生产一个指定类型的对象

简单工厂代码:

简单工厂模式(一对多的生产原则)适合创建对象不多的情况(创建的对象太多,需要对仅有一个工厂类进行修改,破坏了工厂模式中的封闭原则),当创建对象较多时考虑使用工厂模式(一对一的生产原则)

工厂模式 :

特点:

工厂类中只实现一种对象 ,通俗一点就是:工厂对应只生产一种产品,例如,盐,味精,鸡精的生产都拥有单独的生产工厂。所以工厂模式有多个工厂类

工厂模式代码:

抽象工厂模式

抽像工厂类是一个大类,例如要制造一艘船,船就是一个大类,在大类中把船分为多个组成部分,根据需求,制造不同类型的材料组合一艘船

抽象工厂的主要组成部分:

  1. 抽象工厂
  2. 具体工厂
  3. 产品接口
  4. 具体产品

抽象工厂的优点:

  1. 隔离了产品的具体实现:客户端只需注意产品的接口,不需要了解产品创建的具体实现
  2. 方便产品的整体替换:同一产品的不同实现,只需切换具体工厂
  3. 确保产品一致性:产品的实现都是遵循着一套设计规则的实现

抽象工厂模式代码:

相关推荐
在西安放羊的牛油果5 小时前
我把 2000 行下单代码,重构成了一套交易前端架构
前端·设计模式·架构
寅时码1 天前
React 正在演变为一场不可逆的赛博瘟疫:AI 投毒、编译器迷信与装死的官方
前端·react.js·设计模式
willow4 天前
Axios由浅入深
设计模式·axios
七月丶6 天前
别再手动凑 PR 了:这个 AI Skill 会按仓库习惯自动建分支、拆提交、提 PR
人工智能·设计模式·程序员
刀法如飞6 天前
从程序员到架构师:6大编程范式全解析与实践对比
设计模式·系统架构·编程范式
九狼6 天前
Flutter + Riverpod +MVI 架构下的现代状态管理
设计模式
静水流深_沧海一粟7 天前
04 | 别再写几十个参数的构造函数了——建造者模式
设计模式
StarkCoder7 天前
从UIKit到SwiftUI的迁移感悟:数据驱动的革命
设计模式
阿星AI工作室7 天前
给openclaw龙虾造了间像素办公室!实时看它写代码、摸鱼、修bug、写日报,太可爱了吧!
前端·人工智能·设计模式