无我

让内心永远燃烧着伟大的光明的精神之火!
灵活的思考,严谨的实现
豪迈的气魄、顽强的意志和周全的思考

浅读《大话设计模式》————8、雷锋依然在人间——工厂方法模式

浅读《大话设计模式》————8、雷锋依然在人间——工厂方法模式

简单工厂模式、工厂方法模式,这两者的区别我想顾名思义!前者讲的是这个模式用到一个简单工厂,但是后者强调的是工厂方法,其实意思就是该模式中工厂设计很重要。

其实理解了简单工厂,基本上只要再稍微看一下工厂模式的设计,就很容易理解这两个模式。不过,似乎工厂方法模式是简单工厂模式的改进版,简单工厂没有存在的必要。但是事实并非如此,在扩展不经常的时候,一个简单工厂就可以了。但是要是经常有相似功能的扩展需求,那么工厂方法模式就要有价值一些。

在代码形式上,简单工厂模式的最大优点在于工厂类中包含了必要的逻辑判断,根据客户端的选择条件动态实例化相关的类,对于客户端来说,去除了与具体产品的依赖。但是,工厂方法是把简单工厂的内部逻辑判断移到了客户端代码来进行。所以,想要增加功能,就同时需要修改客户端代码。但是这样代码结构还是很清晰的,所以两者各有千秋!

posted on 2009-04-20 22:02 Tim 阅读(509) 评论(0)  编辑 收藏 引用 所属分类: 设计模式


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


<2009年9月>
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

导航

统计

公告

本博客原创文章,欢迎转载和交流。不过请注明以下信息:
作者:TimWu
邮箱:timfly@yeah.net
来源:www.cppblog.com/Tim
感谢您对我的支持!

留言簿(9)

随笔分类(173)

IT

Life

搜索

积分与排名

最新随笔

最新评论

阅读排行榜