登陆注册
8183300000116

第116章 2 抽象工厂模式

时间:1月1日地点:大B房间人物:大B,小。

大B:“我们可以认为麦当劳和肯德基就是生产食物的工厂,那么理所当然,汉堡和鸡腿是他们共同生产的两种食物,不管你去MDL还是KDJ,说:我要鸡腿,那肯定不会给你拿来烤羊腿。嘿嘿!这里,我们假定麦当劳和肯德基只生产这两种产品。我们是消费者,我们就是客户,就是产品的消费者,就是程序中对象的调用者。而麦当劳和肯德基,理所当然的,他们就是工厂,一个叫做麦当劳工厂,一个叫做肯德基工厂,他们是真正的生产者,而对于我们这些客户消费者(程序中对象的调用者)来说,不管是去麦当劳还是肯德基,我们都说一样的话(我们的要求是稳定的):我要鸡腿。只要我们提出这个请求,那么肯定会得到我们想要的。而作为工厂(生产者),麦当劳和肯德基都生产鸡腿和汉堡,所以抽象出来的抽象工厂都具有生产鸡腿和生产汉堡的功能,这是接口中的两个方法。因为在这个接口中,还不知道到底要生产谁家的产品,所以只能返回个抽象的鸡腿或汉堡,等到麦当劳或者肯德基工厂生产出来,就知道是谁家的了。(有标志嘛,这就是动态创建对象)。不管是麦当劳还是肯德基的鸡腿或汉堡,它的本质都是鸡腿或汉堡,所以可以抽象出来。那么鸡腿就派生出麦当劳的鸡腿和肯德基的鸡腿,而汉堡就派生出麦当劳的汉堡和肯德基的汉堡。而对于我们这些客户消费者(程序中对象的调用者)来说,不管是去麦当劳还使肯德基,我们都说一样的话(我们的要求是稳定的):我要鸡腿。只要我们提出这个要求,那么肯定会得到我们想要的。不管是谁家的鸡腿,肯定是鸡腿不会是羊腿。所以,我们只要规定好是鸡腿(接口)就行了,而让工厂去绝对具体的制作过程。我们只伸手接过来一个鸡腿,狠狠的咬一口,恩,真香!)到现在为止,我们只和鸡腿(抽象的接口)还有抽象工厂(因为我们不管是麦当劳还是肯德基,我们只要鸡腿)打交道。你现在知不知道什么是抽象工厂模式?”

小A:“抽象工厂模式提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。抽象工厂(Abstract Factory)模式,又称工具箱(Kit 或Toolkit)模式。”

大B:“从模式定义中知道这个模式的意图内容为:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。工厂类层次的通信接口只有抽象工厂和创建产品族的各个工厂方法,这些工厂方法不带任何参数,并且返回具有抽象产品类型的具体产品实例。这些使得客户端可以不依赖具体产品的类,从而体现了模式的意图。意图中的‘而无需指定它们具体的类’可以理解为客户端在使用和创建具体产品时不给出具体产品的任何暗示。”

小A:“师兄,抽象工厂模式有什么动机啊?”

大B:“考虑一个支持多种视感(l o o k-a n d-f e e l)标准的用户界面工具包,例如M o t i f和Presentation Manager。不同的视感风格为诸如滚动条、窗口和按钮等用户界面‘窗口组件’定义不同的外观和行为。为保证视感风格标准间的可移植性,一个应用不应该为一个特定的视感外观硬编码它的窗口组件。在整个应用中实例化特定视感风格的窗口组件类将使得以后很难改变视感风格。”

同类推荐
  • 如何选购电脑

    如何选购电脑

    本书以问答的形式介绍了选购电脑的基本知识。内容包括:电脑的组成、选购电脑的技巧、主机的部件构成、主板的主要类型、CPU的性能指标等。
  • 综合应用软件设计

    综合应用软件设计

    本书是为计算机、信息管理等相关专业高年级本科生在开设相关课程时所编写的一本教学参考书,它将全面指导学生学习、熟悉和运用当今被广泛采纳的一些主流技术去进行综合应用软件设计的有效实践。
  • 办公软件高级应用

    办公软件高级应用

    日新月异的信息技术使计算机的应用渗透到各行各业,融入到我们的工作、学习和生活中,特别是在办公领域中运用计算机技术,可以实现办公自动化,成倍地提高工作效率。在众多的办公软件中,微软公司的Office系列软件是办公自动化软件中的佼佼者,其强大的功能深受全世界广大用户的青睐。根据当前业界的需求以及办公软件的实际应用范围,本书针对Office2003系列产品,深入讲解其高级应用知识和操作技能。
  • 网络广告经纪人

    网络广告经纪人

    本书为网络广告经纪人培训认证的指定教材,该认证是商务部中国商务广告协会和信息产业部中国电子商会联合推出的,旨在为国家造就和培养出一大批网络广告梯队型人才。该教材包括网络广告经纪人的介绍和发展趋势,以及网络广告的原理、策划、设计、制作、发布与交换、效果评估、管理,以及网络广告营销的国内外最新的成功案例,还提供了一些常用的网络广告制作工具。本教材适合助理网络广告经纪人和网络广告经纪人层次使用。也可作为高校广告、电子商务等专业的教材。
  • 计算机网络技术与应用

    计算机网络技术与应用

    本书共8章,系统地介绍了计算机网络的发展和基本原理体系结构、局域网、广域网、网络服务、网络安全、典型网络的结构特点等内容。除第8章外,其他各章都附有练习题。为了加强学习效果,本书围绕知识点的典型性,精选了6个实验。此外,在本书的第8章,我们综合各章知识设计了“办公局域网组建设计”和“中小型企业局域网组建设计”这两个常用的计算机网络技术应用实例,供学生学习和参考。本教材适合作为本科非计算机专业学生的计算机网络教材。
热门推荐
  • 幻想齿轮

    幻想齿轮

    命运的齿轮不断的转动,幸运的一角终于转动到我的头上。幻想成为内心的力量,强化手段永远比不上强化自身,永恒的力量才是我追寻的目标。
  • 快穿神君酒量一钱八

    快穿神君酒量一钱八

    额......这位温柔帅气的神君大人,我真的真的是只想找你喝酒啊~QAQ某神君笑不达眼底道:哦~巧了,我也只是想追着你喝酒啊~^?_?^小酒仙哭唧唧:那您倒是放开我啊~某神君笑道:喝了这杯合卺酒,我就放了你~小酒仙:嗷QAQ
  • 祝你幸福:乞爱

    祝你幸福:乞爱

    她是从小就被遗弃的孩子,她渴望能拥有一个温暖的家,平平淡淡的生活着。慕亚熙:我世界只有你一人的存在,可你的世界为什么不能我一人的存在?良承磊:我没有想到你的选择是他?任欢亭:你若安好,便是晴天。
  • 英雄通缉令

    英雄通缉令

    这是一个人类与非人类的世界,赫洛岛、塔利岛、圣诺岛和谷鸣岛。他们,被世人称为救世英雄,但是他们却是通缉令!他们,身为8000万达币的通缉犯,为的不是出名,而是为了寻找传说中的“世邪霸”。破甲剑、万影弓、恶灵盾、幻闪纱和圣牧矛,五大圣器将临人间。被称为通缉令的班里奥为了打败传说中的“世邪霸”,于是他带上了他的伙伴,便踏上了通缉犯的道路!大家好!我是Good玄。《英雄通缉令》在创世中文网上映了!更新时间跟起点中文网的时间是一样的哦,请读者们多多支持此作品,同时也要支持起点中文网的《英雄通缉令》,谢谢!
  • 天行

    天行

    号称“北辰骑神”的天才玩家以自创的“牧马冲锋流”战术击败了国服第一弓手北冥雪,被誉为天纵战榜第一骑士的他,却受到小人排挤,最终离开了效力已久的银狐俱乐部。是沉沦,还是再次崛起?恰逢其时,月恒集团第四款游戏“天行”正式上线,虚拟世界再起风云!
  • 天行

    天行

    号称“北辰骑神”的天才玩家以自创的“牧马冲锋流”战术击败了国服第一弓手北冥雪,被誉为天纵战榜第一骑士的他,却受到小人排挤,最终离开了效力已久的银狐俱乐部。是沉沦,还是再次崛起?恰逢其时,月恒集团第四款游戏“天行”正式上线,虚拟世界再起风云!
  • 天阙

    天阙

    【天阙第二部:星魂】(从本书的第十七卷开始)雪山的深夜,突然地动山摇,重重群山之中出现了一个神秘的湖泊。水清澈无比,却深不见底。里面有数不清的如鹅卵大小的软珠子,发着萤光。它们是什么?在月黑的夜晚,总有一个神秘人,悄悄的来到湖边,他(她)是谁?他(她)来这里做什么?大地动,星河暗,月心明,天地归宁。【天阙第一部:月心】天帝盛怒之下推倒了月宫,月宫跌入凡间化做了一座仙山——天阙。一天,在离天阙数千里之外的雪山上,一个收猎的少年遇到一个来历神秘的小女孩。这个小女孩有着至高的法力和尊贵的身份。她的到来,是为了完成一个埋藏了万年的劫数。金风至,冰弦动,月归心,天神现。
  • 秘书实用口才

    秘书实用口才

    秘书工作需要秘书从业人员具备一定的口语交际能力,保证工作过程中的有效沟通并改善组织及个人的工作形象。本教材从职业行为导向的教育理念出发,针对性地构建了包括秘书说话心理训练、思维训练、有声语言训练、势态语言训练、倾听技巧训练、事务处理训练、人际沟通训练、演讲与辩论训练等几个环节的循序渐进、螺旋上升的口才训练模式。本教材强调实用性,重秘书口语表达的情境训练设计。适宜高校文秘专业及其他涉及管理与辅助管理工作岗位的专业口才教学之用,也可作为秘书及辅助管理工作人员的工作参考用书。
  • 天行

    天行

    号称“北辰骑神”的天才玩家以自创的“牧马冲锋流”战术击败了国服第一弓手北冥雪,被誉为天纵战榜第一骑士的他,却受到小人排挤,最终离开了效力已久的银狐俱乐部。是沉沦,还是再次崛起?恰逢其时,月恒集团第四款游戏“天行”正式上线,虚拟世界再起风云!
  • 魄境重生

    魄境重生

    苦恋无依,情感无处寄托,事业的低走,郁郁寡欢的悲情,向死而生的寻觅,破茧重生,被命运所眷顾。