精诚所至,金石为开!
UML图: 现实生活中例子: 每次参加不同的聚会或者与不同的人见面,可能穿的衣服是不一样的,比如,你今天上午要与你的一个新客户见面,你可能会对你的老婆说:老婆,给拿件商务装(参数),我要去见我的一个客户,你老婆(工厂类)接到你的请求(商务装参数)后,从衣柜中取出一件商务装(具体产品),交给你。整个过程就完成了。 分析: 你可能根据不同的条件,要的衣服是不一样的,但要的衣服都是已经在你的衣柜中存在的。并且,每件上衣它们都属于同一种抽象,即它们可以从一个抽象类或接口中继承,这此衣服各自都有一定特征,这些都是条件。然后你要的时候,就可以向你老婆说一种特征,她就会根据这个特征为你服务了。这就是典型的简单工厂模式的应用。 抽象产品类代码
应用情景
参考资料
源程序下载:/Files/bit-sand/SimpleFactory.rar
©2007 renly 原创作品,欢迎转载,转载请注明来自博客园,留此信息。
posted on 2008-01-25 18:27 任力 阅读(2845) 评论(22) 编辑 收藏 所属分类: A、Design & Pattern
一看文章就知道写的特别认真, 哈哈 回复 引用 查看
设计模式,简单工厂模式,很好啊,写的不错哦,收藏了 http://*** 找工作,来中国程序员人才网http://***吧, 我们程序员的人才网 我还注册了简历呢 回复 引用 查看
@李华星 谢谢了! 确实花了许多时间,由于本人文采不好,只有认真点了。。勤能补拙嘛 回复 引用 查看
博主写得不错啊!简单易懂!造福菜鸟啦! 回复 引用 查看
广告都这到这来了 回复 引用 查看
@技术菜鸟 呵呵..谢谢.这个系列写的时候可能都是简单易懂的. 用简单易懂的语言让大家理解设计模式 回复 引用 查看
写得很好哦,收藏了。 回复 引用 查看
写的不错,和生活结合起来了。 如果再能举个实际应用的例子就更完美了,比如我们写程序是切换数据库时经常用到这样的简单工厂。 回复 引用 查看
@王德水 呵呵。。谢谢,在以后的文章中,我会考虑进来。 回复 引用 查看
不错,虽然简单,但是表达的如此清楚还是不容易的一件事 回复 引用 查看
看来LZ对网络也很精通啊。 回复 引用 查看
@破曉之陽 对网络?什么意思?呵呵...从哪看出来的呀 回复 引用 查看
@任力 指的是你发表的那些网络命令的文章. 回复 引用 查看
写的很通俗易懂,谢啦 回复 引用
哈哈,楼主写的真不错,今天看了大话设计模式,感觉和那个一样让人容易理解 回复 引用 查看
@路人A@秋千谢谢了,由于本人水平也不高,所以只能用一些最简单的话来描述我所理解的。说起来惭愧,有许久没有写东西了。有些对不住大家了 回复 引用 查看
写的非常好。加上一个列子 通俗易懂 谢谢。准备看第二篇 回复 引用 查看
@小昊 谢谢你的鼓励!老弟文笔不好,还望指出缺点与不足,在以后的文章中能够更好的分享给大家 回复 引用 查看
最近在学设计模式,讲的不错! 回复 引用
总结的不错,加油~ 回复 引用 查看
个人觉得工厂中 public ICoat CreateCoat(string styleName) 不太理想。 客户使用 food = factory.CreateCoat("fashion"); 和new BusinessCoat(); 没有区别了。 工厂失去意义。 回复 引用
——微软WCF研发团队智慧结晶
——ASP.NET之父强烈推荐
——CSS与HTML设计模式巅峰之作