首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

【转】简略工厂,工厂方法,抽象工厂的区别

2012-11-15 
【转】简单工厂,工厂方法,抽象工厂的区别转自:http://dbajun.iteye.com/blog/200000?本人无意中看到的博文,

【转】简单工厂,工厂方法,抽象工厂的区别

转自:http://dbajun.iteye.com/blog/200000

?

本人无意中看到的博文,这个解释真的把3者看了很清晰了,建议大家好好领悟。

?


抽象工厂需要创建一些列产品,着重点在于"创建哪些"产品上,也就是说,如果你开发,你的主要任务是划分不同差异的产品线,并且尽量保持每条产品线接口一致,从而可以从同一个抽象工厂继承。

1 楼 北极的。鱼 2011-09-25   我在理解简单工厂,工厂方法和抽象工厂的时候。
首先只区分工厂方法和抽象工厂。
前者是侧重于单个产品的精细定义,换言之:站在产品的功能差异的角度去思考。
后者是侧重于产品族之间的差异,换言之:站在不同产品族的差异规范上去思考。类似现实生活中的一个例子:微软的产品的功能和苹果的产品的功能肯定有差异么。
然后提到简单工厂,简单工厂就是工厂的特例。他把所有产品放在一个类中去实现,具体的说是放在一个类的某个方法里,依靠if-else或者switch来生产了。如果产品很多的话,大家可以想象这个方法有多庞大?而且最致命的缺点在于,要添加一个产品就必须要修改这个方法(添加一个else或者case)。这样不就产品和产品之间的耦合度太高了么,牵一发动全身了。很不安全。

热点排行