查看文章 |
重温工厂模式
2006-09-28 09:57
工厂模式分三种,简单工厂(也叫静态工厂)模式、工厂方法(也叫动态工厂)模式、抽象工厂模式。 虽然看了许多设计模式的资料,也问了不少同行的朋友,但对工厂模式的理解感觉不够,今天又带着几个问题重温了一下: 1、为什么要使用工厂模式? 2、它能带来什么样的好处? 3、什么情况下适合作用工厂模式? 在网上搜索一下,发现有许多使用工厂模式的例子,但我觉得绝对多数都是在滥用,并没有真正理解工厂模式的设计用意,最后还是从《JAVA与模式》这本书找到比较满意的答案: 1、使用的工厂模式的原因是: 工厂模式将产品的创建和产品的使用隔离,当产品种族比较复杂,层次比较多,工厂起到了对产品统一管理、调配的作用。 2、使用工厂模式的好处有: a.将产品的创建和使用隔离控制 b.统一管理产品,更具灵活性 c.允许动态的增加产品种类,而不需要修改原来的代码 3、当系统需要把产品的创建和使用分开,或者需要对产品的创建过程进行统一管理、调配,工厂模式是个很好的选择,并不是一提到产品的创建就想用工厂模式,否则就是滥用。 |