当前位置:首页 > 旅游指南

抽象工厂模式 工厂模式、工厂方法模式和抽象工厂模式的差异简析

工厂模型的优势在于减少了工厂与产品之间的耦合,将特定产品的构建过程放在特定的工厂类中。以后扩展产品方便多了。您只需要添加一个工厂类和一个产品类,就可以轻松地添加产品,而无需修改原始代码。在一个简单的工厂中,如果你想添加一个产品,你需要修改工厂类,添加一个if/else分支,或者添加一个case分支。工厂模式符合软件开发中的开闭原则,对扩展开放,对修改封闭。

抽象工厂:总觉得这种模式很像建造者模式。

工厂方法模式为一个产品提供了分层模式,而抽象工厂方法为多个产品提供了分层模式。注意这里的多个具体产品是相互耦合的,也就是说这里的抽象工厂提供的产品之间是有一定联系的。

有些人做如下比较:

工厂方法模式:一个抽象的产品类,从中可以派生出多个具体的产品类。

一个抽象工厂类,从中可以派生出多个具体的工厂类。

对于每个特定的工厂类,只能创建一个特定产品类的实例。

抽象工厂:多个抽象产品类,每个抽象产品类可以派生多个具体产品类。

一个抽象工厂类,从中可以派生出多个具体的工厂类。

每个特定的工厂类可以创建特定产品类的多个实例。

区别:工厂方法模式只有一个抽象产品类,而抽象工厂中有很多。

只能为工厂方法模式的特定工厂类创建特定产品类的一个实例,而可以为抽象工厂创建多个实例。

以下是一个形象比喻:

无论是工厂方法模式、工厂模式还是抽象工厂,它们本质上都是提取不变的部分,将可变的部分留为接口,以最大化重用。以一家生产杯子的工厂为例:起初,没有工厂模型,我必须知道杯子的所有特征,比如杯子的材料和形状,才能生产它们。这是我们新的Cup();这个杯子一定要具体。工厂老板找到了形状相同但材质不同的被子,比如一个是玻璃的,另一个是瓷器的。但是要有两条生产线,显然有浪费资源的嫌疑。现在工厂主生产杯子,不会让生产线知道我要生产玻璃还是瓷器,而是在不知道具体材质的情况下,让它量力而行。当它完成模具时,只需要填充玻璃或陶瓷材料,就可以制作出相同形状的特定杯子。不幸的是,java不能是抽象的Cup,所以有一个工厂方法模式。原来是杯杯=新杯;现在它是简单的工厂。createCup(字符串Cupname),它根据名称产生一个Cup,createCup返回一个实现Cup接口或抽象类的具体cup。简单的抽象工厂有一个问题,就是当我想生产一个形状相同的铁杯时,工厂里没有定义相应的加工流程,只能更改createCup方法,不合理。我现在只想生产铁杯。为什么需要最后一次把玻璃原料换成铁的?所以有工厂模式。本来生产线生产模具的时候也要考虑是玻璃用的模具还是铁杯,现在不用担心了。CupFactory.createCup()创建一个Cup。作为接口或抽象类。实现它的具体子类将创建一个符合Cup接口的具体Cup。所以现在工厂主想生产水壶,就要在工厂模式下重建一条水壶生产线。他能在水杯生产线上同时生产水壶吗?这是抽象工厂。

1.《抽象工厂模式 工厂模式、工厂方法模式和抽象工厂模式的差异简析》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《抽象工厂模式 工厂模式、工厂方法模式和抽象工厂模式的差异简析》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/junshi/804403.html

上一篇

适合女生学的专业 最适合女生学习的六个医学专业,就业率都不差,而且学起来有优势

下一篇

乔丹经典比赛 经典:1990年公牛VS活塞G7 活塞祭出乔丹法则 乔丹怒了!含录像

biki 十倍币工厂 BiKi ETF或成为新时期最好的“投机”

biki 十倍币工厂 BiKi ETF或成为新时期最好的“投机”

声明:本文旨在传达更多市场信息,不构成任何投资建议。文章仅代表作者观点,不代表火星金融官方立场。边肖:记得要注意牛市初期,整个加密货币市场并没有因为BTC的短期跳水而崩盘。相反,整个趋势再次逆势而行,让全球密码投资者看到了数字资产的弹性。成千上万的投资者带着资金进入...

火灾新闻 一工厂发生火灾,95名消防员鏖战8小时灭火……

  • 火灾新闻 一工厂发生火灾,95名消防员鏖战8小时灭火……
  • 火灾新闻 一工厂发生火灾,95名消防员鏖战8小时灭火……
  • 火灾新闻 一工厂发生火灾,95名消防员鏖战8小时灭火……

nike货号查询 教你如何区分耐克工厂店和专卖店

  • nike货号查询 教你如何区分耐克工厂店和专卖店
  • nike货号查询 教你如何区分耐克工厂店和专卖店
  • nike货号查询 教你如何区分耐克工厂店和专卖店

导电布生产厂家 模切易得通:导电布使用特点,加工厂家盘点

  • 导电布生产厂家 模切易得通:导电布使用特点,加工厂家盘点
  • 导电布生产厂家 模切易得通:导电布使用特点,加工厂家盘点
  • 导电布生产厂家 模切易得通:导电布使用特点,加工厂家盘点

姜武老婆宋妍 姜武:去精神病院体验生活,拿过多个影帝,和姜文是同母异父

  • 姜武老婆宋妍 姜武:去精神病院体验生活,拿过多个影帝,和姜文是同母异父
  • 姜武老婆宋妍 姜武:去精神病院体验生活,拿过多个影帝,和姜文是同母异父
  • 姜武老婆宋妍 姜武:去精神病院体验生活,拿过多个影帝,和姜文是同母异父

科斯拉 特斯拉准备在印度建立工厂

对于印度的特斯拉粉丝来说,有个好消息!美国电动汽车和清洁能源公司特斯拉正在孟买寻找开厂的地方。据报道,特斯拉迄今已与马哈拉施特拉邦政府进行了三轮谈判,特斯拉CEO埃隆马斯克(elon musk)也在去年10月发布了一条推文,表明特斯拉进军印度的决心。...

儿童护肤品牌排行榜 首发 | 7大母婴品类品牌影响力排行榜 ·《宝妈真像榜》

  • 儿童护肤品牌排行榜 首发 | 7大母婴品类品牌影响力排行榜 ·《宝妈真像榜》
  • 儿童护肤品牌排行榜 首发 | 7大母婴品类品牌影响力排行榜 ·《宝妈真像榜》
  • 儿童护肤品牌排行榜 首发 | 7大母婴品类品牌影响力排行榜 ·《宝妈真像榜》

第五人格地窖位置 第五人格军工厂地图详解 密码机地窖位置大全

  • 第五人格地窖位置 第五人格军工厂地图详解 密码机地窖位置大全
  • 第五人格地窖位置 第五人格军工厂地图详解 密码机地窖位置大全
  • 第五人格地窖位置 第五人格军工厂地图详解 密码机地窖位置大全