上一页 1 ··· 27 28 29 30 31 32 33 34 35 ··· 47 下一页
摘要: 2 简单工厂模式概述 简单工厂模式并不属于GoF23个经典设计模式,但通常将它作为学习其他工厂模式的基础,它的设计思想很简单,其基本流程如下: 首先将需要创建的各种不同对象(例如各种不同的Chart对象)的相关代码封装到不同的类中,这些类称为具体产品类,而将它们公共的代码进... 阅读全文
posted @ 2013-11-11 20:05 Wishmeluck 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 工厂模式是最常用的一类创建型设计模式,通常我们所说的工厂模式是指工厂方法模式,它也是使用频率最高的工厂模式。本章将要学习的简单工厂模式是工厂方法模式的“小弟”,它不属于GoF23种设计模式,但在软件开发中应用也较为频繁,通常将它作为学习其他工厂模式的入门。此外,工厂方法模式还有一位“大哥”——... 阅读全文
posted @ 2013-11-11 20:04 Wishmeluck 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 5 “开闭原则”的倾斜性 Sunny公司使用抽象工厂模式设计了界面皮肤库,该皮肤库可以较为方便地增加新的皮肤,但是现在遇到一个非常严重的问题:由于设计时考虑不全面,忘记为单选按钮(RadioButton)提供不同皮肤的风格化显示,导致无论选择哪种皮肤,单选按钮都显得那么“格格不入”。... 阅读全文
posted @ 2013-11-11 20:00 Wishmeluck 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 4 完整解决方案 Sunny公司开发人员使用抽象工厂模式来重构界面皮肤库的设计,其基本结构如图6所示:图6界面皮肤库结构图 在图6中,SkinFactory接口充当抽象工厂,其子类SpringSkinFactory和SummerSkinFactory充当具体工厂,接口But... 阅读全文
posted @ 2013-11-11 19:59 Wishmeluck 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 3 抽象工厂模式概述 抽象工厂模式为创建一组对象提供了一种解决方案。与工厂方法模式相比,抽象工厂模式中的具体工厂不只是创建一种产品,它负责创建一族产品。抽象工厂模式定义如下: 抽象工厂模式(Abstract FactoryPattern):提供一个创建一系列相关或相互依赖对... 阅读全文
posted @ 2013-11-11 19:58 Wishmeluck 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 2 产品等级结构与产品族 在工厂方法模式中具体工厂负责生产具体的产品,每一个具体工厂对应一种具体产品,工厂方法具有唯一性,一般情况下,一个具体工厂中只有一个或者一组重载的工厂方法。但是有时候我们希望一个工厂可以提供多个产品对象,而不是单一的产品对象,如一个电器工厂,它可以生产电视机、... 阅读全文
posted @ 2013-11-11 19:58 Wishmeluck 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 工厂方法模式通过引入工厂等级结构,解决了简单工厂模式中工厂类职责太重的问题,但由于工厂方法模式中的每个工厂只生产一类产品,可能会导致系统中存在大量的工厂类,势必会增加系统的开销。此时,我们可以考虑将一些相关的产品组成一个“产品族”,由同一个工厂来统一生产,这就是我们本文将要学习的抽象工厂模式的... 阅读全文
posted @ 2013-11-11 19:56 Wishmeluck 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 5 重载的工厂方法 Sunny公司开发人员通过进一步分析,发现可以通过多种方式来初始化日志记录器,例如可以为各种日志记录器提供默认实现;还可以为数据库日志记录器提供数据库连接字符串,为文件日志记录器提供文件路径;也可以将参数封装在一个Object类型的对象中,通过Object对象将配... 阅读全文
posted @ 2013-11-11 15:28 Wishmeluck 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 3 完整解决方案 Sunny公司开发人员决定使用工厂方法模式来设计日志记录器,其基本结构如图3所示:图3日志记录器结构图 在图3中,Logger接口充当抽象产品,其子类FileLogger和DatabaseLogger充当具体产品,LoggerFactory接口充当抽象工... 阅读全文
posted @ 2013-11-11 15:25 Wishmeluck 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 2工厂方法模式概述 在简单工厂模式中只提供一个工厂类,该工厂类处于对产品类进行实例化的中心位置,它需要知道每一个产品对象的创建细节,并决定何时实例化哪一个产品类。简单工厂模式最大的缺点是当有新产品要加入到系统中时,必须修改工厂类,需要在其中加入必要的业务逻辑,这违背了“开闭原则”。此... 阅读全文
posted @ 2013-11-11 15:23 Wishmeluck 阅读(141) 评论(0) 推荐(0) 编辑
上一页 1 ··· 27 28 29 30 31 32 33 34 35 ··· 47 下一页