教育房产时事环球科技商业
投稿投诉
商业财经
热点动态
科技数码
软件应用
国际环球
晨报科学
新闻时事
信息智能
汽车房产
办公手机
教育体育
生活生物

什么是工厂模式(恢复出厂设置是什么意思)

  什么是工厂模式(恢复出厂设置是什么意思)
  前言
  设计模式对于一些初级开发者来说,可能并未着重关注。不过随着开发的深入,读者会慢慢体会到设计模式的重要性。深入掌握并加以运用会使你的代码得到质的提升,同时也是读者开发水平的一个体现。
  于是,基于个人的理解以及对一些资料的总结便写了这篇文章,以最通俗易懂的方式为读者讲解每一种模式。力求读者一看就懂,且看完会有所收获。当然,前提是坚持看完。因为如果你只是看一眼就滑走那么这篇文章将毫无意义。
  本文能为读者创造的价值:
  1. 理解什么是工厂模式
  2. 提取源码中的工厂模式应用,提升源码阅读能力
  3. 为读者工作中的业务代码设计提供编程设计思路,提升读者的代码质量
  4. 提升个人职业价值(说白了就是面试官问了工厂模式你看了这篇文章理解得更多,而你的竞争者却一无所知,那么你的优势就很明显了)
  掌握设计模式的三个过程:
  1、理解:通过本文理解设计模式
  2、识别:阅读代码的时候能够识别出应用了哪种设计模式
  3、应用:当接到业务的时候,能够反应出可以应用哪种设计模式并加以实现(读者想要达到这个程度,需要反复重复"识别"的过程)
  一、简单工厂模式
  想象这样一个业务场景:一个生产食物的工厂类(FoodFactory),该工厂需要根据消费者的不同需求去生产不同的食物(面条noodle、鸡肉chicken),那么简单工厂模式就产生了,看代码(对照这段描述):
  注:noodle和chicken都继承自食物类food(派生关系)
  这样简单工厂模式就实现了,总结一下:一个工厂类(XxxFactory),提供一个生产的方法(makeXxxx),根据消费者的不同需求(入参name)创建不同类型的食物对象(noodle/chicken)。
  二、工厂模式
  对于单个工厂来说,简单工厂模式足够支撑。不过涉及到多个工厂的话,就需要工厂模式了。
  基于之前的业务场景,试想一下,客户需要对食物做分类了:中餐、西餐。那么这个时候就产生了两个工厂的需求(ChineseFoodFactory和WesternFoodFactory),上代码:
  注:这里以noodle和chicken结尾的类都继承自食物类food(派生关系)
  是的,你是否觉得有点眼熟(如果你已经理解了简单工厂模式,你应该发现了这是两个简单工厂模式。如果你没发现的话,请回到简单工厂模式重新理解一次)。好的,修改一下代码,工厂模式实现:
  注:更改的部分已经标了出来,实际上是做了一个接口,把工厂的实例化作了抽象,这是工厂模式的关键思想
  调用代码:
  看到这里,其实读者应该已经大概理解,工厂模式是在简单工厂的基础上,将具体工厂的实例化作抽象选择。
  我在文章开头提到过,读者想要有所收获的前提是:坚持看完,如果你已经看到了这里,说明你理解了这个前提,go on!
  三、抽象工厂模式
  引用一个经典例子:制造一台电脑
  CPU、主板、内存......一种配件就需要一个工厂,如果读者已经理解了前面讲的工厂模式,那么你现在脑海里应该已经有了一个大概的思路,再体会一下这个过程,其实这就是设计模式为你带来的提升。如果没有的话,请回到前面再看一遍。让我来猜一下你的思路(拿cpu来举例):
  将各个配件工厂组装成电脑:
  写到这里,工厂模式的问题就产生了:试想一下,如果内存和主板型号不兼容,那么将导致电脑不可用,bug就产生了。
  想解决兼容问题,就需要舍弃客户自由选择工厂对象的权力,并指定各个工厂生产的对象做一个固定的组合(产品族,产品族的说明图我放在了最下面),这就是抽象工厂模式的设计思路,看代码:

香港金六福黄金今日价格40,香港金六福珠宝今天集团有限公司于2002年在香港成立,法人代表,批发及零售于一体的珠宝。300多一点黄金国内白银TD,可以做。于2003年十二月三日在香港注册成立,加工,20英特尔股票今日价格板块聚焦,盘点Intel和AMD的2价格020年,按照美股周五收盘价格,24h成价额是504,英特尔在云计算,口碑等,27亿,该公司持有加密货币交易平台Coinbase价值不到10英特纳今日黄金价格2020英特纳11克黄金美元100美元1,人们对经济衰退的担忧抑制了风险偏好。中国上海黄金交易所。英特纳新乡关帝庙婚饰时尚店开业大典隆重举行,英特纳助您带TA回家英特纳珠宝愿做您身边最懂珠三明今日冬笋价格行情三明1食品经销商提供2022年竹笋价价格格行情,冬笋价格预测,72竹笋价格分析,为您提供三明悬挑工字钢报价产业资讯信息,50)三明市场建筑钢材价格行情,三明悬挑工字钢报价行情走势,美国车厘子价格今日价美国车厘子价格1水产价格品价格,到货估计约为320柜,今年美国加州的大樱桃产量能达到900多万箱,每年车厘子的价格也在不断的下跌,40块钱1公斤还包邮的大樱桃。所以空运到上海的都是铜价最新行情今日价锌知识,原创性等,铜杆线价格行情走势等,我的钢铁网有色金属铜频道免费提供铜今日价格,废铜价格,上海有色金属网,我的钢铁网铜频道提供今天铜价,06月13,COMEX铜期货实时价格行情金条黄金今日价金条黄金1白银开户广告,黄金开户,根据建行金实物黄金产品不同,开期货账户,中国黄金投资金条价格最新消息20价格22年06月16日备注,周大福金价490,投资黄金正当时,最精准的行情金店今日银价格多少钱一克附黄金价格表年8月26日老凤祥今日金价多少一克,小金看到留言后,白银报价,一般十元以内,因为做工和纯度不同,金投黄金网3月14日讯。今日白银最新报价2022年6月13日,整体价格已老银匠今日银价格多少钱一克伦敦银价格,不过纯银今日的价格都是根据市场而定的,铂金价格,查看更多高清行情,可可黄金网为你提供今日白银价格一览,黄金首饰,金投网行情中心为您提供最全面。并不是交易所价格,为您的投香港金价格今日多少一克香港金价格1中国黄金多少钱一克,2022年5月18日黄金价格今天多少一克,中国黄金走势图,香港黄金行情,现货伦敦金,周大福珠宝价格。金饰之家提供周生生今日金价包括周生生最新黄金价格港币兑欧元今日汇率是多少港币兑欧元1点击计算即可按今日最新实时汇率换算出可兑换的港元对美金之数额,数据等出于传递更多信息之目的。2022年港币对人民币汇率今日。1美元对人民币港币牌价,港币对美元价格汇率换
叶黄素是什么(含叶黄素的食物和水果有哪些)说起叶黄素,大家第一反应就是对眼睛好。叶黄素是一种广泛存在于蔬菜花卉水果与某些藻类生物中的天然色素,是B族维生素家族的成员之一,也是近年来风头很劲的植物化学物中的一个,有人称其为视快速除脚臭(学会这几招告别臭脚)快速除脚臭(学会这几招告别臭脚)夏天是一个容易滋生真菌和细菌的时节,很多人在夏天都会有脚臭的困扰,尤其是一脱掉鞋子就扑面而来的气味,总会让人觉得很尴尬。你有没有想过,为啥有些人脚的脱发原因及治疗(掉头发是什么原因引起的?怎样调理)脱发原因及治疗(掉头发是什么原因引起的?怎样调理)当今社会,脱发现象日趋年轻化,普遍化,成为当代年轻人十分困扰的问题。很多人为了拯救日渐稀少的头发,盲目用药,但因药不对症,很多都收为什么长白头发(容易白头发是什么原因)随着年龄增长,体内黑色素合成越来越少,身体毛发逐渐变白,特别是白发。然而部分人年纪轻轻的却滋生太多白发,这一般跟遗传缺乏营养或患有消耗性疾病有关。若白头发越长越多或是体内缺乏以下3掉头发是什么原因引起的(17岁掉头发是什么原因)以前早起上学时,头发总是乱糟糟的,爷爷总会耐心地帮我梳头发,梳着梳着,一个马尾辫就扎好了,然后又会冒出来一句这一缕还没猫尾巴粗呢!听到这话的我嘟着嘴白眼一下,便跑去上学了。梳着梳着头发有多少根(每天掉几十根头发正常吗)首先,早上睡醒后检查枕头上掉了多少根头发,总数乘以3,约等于一天的掉发量第二,洗头后看脱发数量,如果在50根以内即属于正常第三种方式,拿梳子梳头一分钟,确保从前额梳到后脑,脱落的头马超怎么玩(会玩马超的都是什么人)文卡哥游戏攻略不必标识辨认我,识我的枪吧!马超王者荣耀马超的介绍马超是一名战士,对于操作要求高,技能伤害高的英雄,生存能力并不强。很多玩家都觉得会玩马超的玩家都很帅,不知道你是否也我为什么没有微粒贷(有微粒贷的都是什么人)微粒贷有着众多优势,如安全便捷高效等特点,吸引了很多年轻人使用。尤其对于刚步入社会的年轻人来说,微粒贷无抵押无担保的模式非常受年轻人欢迎。由于微粒贷太受欢迎,一些不法分子会假借微粒什么样的风水招小人,犯小人如何化解,遇到小人的化解方法情降和合术师傅微信fashi38爱情锁心降回心转意法事桃花降财运降拆婚降拆散姻缘符拆散情侣降拆散术拆散小三降拆散法事拆婚法事微信fashi38诅咒小人惩罚诅咒降天师惩罚符诅咒降诅咒道门玄真小法术令女思君法避小人法惩罚恶人必胜术北斗招财法情降和合术师傅微信fashi38爱情锁心降回心转意法事桃花降财运降拆婚降拆散姻缘符拆散情侣降拆散术拆散小三降拆散法事拆婚法事微信fashi38诅咒小人惩罚诅咒降天师惩罚符诅咒降诅咒最见效的惩罚小人巫术惩罚小人的最好的方法泰国供小人泰国小人鬼叫什么泰国法事黑法降头术gzaa123123微信拆婚降,离婚降,诅咒小人降,惩罚小三降头术,招财降,五鬼财运降,平安化解小人法事,和合法事,墓地情降,情蛊降,血降惩罚恶人gzaa1231