设计模式学习笔记——抽象工厂模式

设计模式(创建型)------ 抽象工厂模式

在工厂模式中,我们为每一个类都设计了一个工厂,以此来获取该类的对象,但缺点就是一旦类多了,工厂就多了,这时候我们可以考虑这些类间是否有关联,举个例子:

  • 小米华为这两个品牌都有自己的手机、路由器等电子产品,如果按照之前的方法,我们需要为这些产品都设计一个工厂,那这样成本太高了,如果按照品牌划分,分为小米工厂和华为工厂,每个工厂都拥有制造手机、路由器的生产线,这样一来我们就只需要两个工厂类。

同时因为这两个工厂有共同点,所以我们可以进行抽象化,设计一个超级工厂,它拥有制造手机、路由器的生产线(方法),这样一来,当我们需要新增一个具有相同产品线的工厂时,只需要继承这个超级工厂即可。

但这种方法也有缺点,当我们的产品线需要新增产品时,超级工厂和每个品牌的工厂都需要进行修改,这也就违背了开闭原则。

相关推荐
禹中一只鱼6 小时前
【力扣热题100学习笔记】 - 哈希
java·学习·leetcode·哈希算法
SteveSenna8 小时前
项目:Trossen Arm MuJoCo
人工智能·学习·算法
m0_747304168 小时前
GNN学习
学习
Sagittarius_A*8 小时前
监督学习(Supervised Learning)
人工智能·学习·机器学习·监督学习
大数据新鸟8 小时前
设计模式详解——观察者模式
观察者模式·设计模式
qqty12179 小时前
Java进阶学习之路
java·开发语言·学习
WHS-_-20229 小时前
Python 算法题学习笔记一
python·学习·算法
_李小白9 小时前
【OSG学习笔记】Day 22: StateSet 与 StateAttribute (渲染状态)
笔记·学习
zzh08110 小时前
Mysql数据库备份与恢复笔记
数据库·笔记·mysql
TorrieLeung10 小时前
碎片学习|外贸tob 一手交钱一手交货
学习·tob·外贸销售·工地英语