设计模式之Factory(Simple Factory,Factory Method,Abstract Factory)

工厂,要生产的是各种各样的产品。

Simple Factory,简单工厂,就是最基本的根据传进来的参数来决定生产的是何种产品。

所以,明显的硬编码,采用if,else来实现。

改进方法:Factory Method,工厂方法。

工厂方法将创建产品推迟到了工厂类的子类去。不同的子类分别生产不同的产品。

但是,问题又来了,一种工厂子类生产一种产品。但如果,某种产品又有不同的型号呢?那就要将该工厂子类又分为不同型号的工厂子类。

改进方法:Abstract Factory,抽象工厂。

抽象工厂提供了生产一个产品系列的不同产品的方法,所以,在其内部会有生产不同产品的方法。

参考:

设计模式之--工厂模式(Factory)

关于Factory, Abstract Factory, Factory Method, 和Builder...

Factory Method属于类模式还是对象模式的疑惑及解惑

猜你喜欢

转载自jxyang.iteye.com/blog/1451906