设计模式之工厂模式(创建型)

来源:互联网 发布:睫毛膏干了怎么办知乎 编辑:程序博客网 时间:2024/06/05 20:01
什么是设计模式?
每一个模式描述了我们周围不断重复发生的问题,以及该问题的解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复劳动。
1.简单工厂(Simple Factory)
当看到“new”时,就会想到“具体”。Pizza pizza = new CheesePizza();当有很多种Pizza时,我们需要用选择语句来创建对象。但是如果有很多地方都要调用这段代码时,我们是不是把这段代码放到一个简单工厂比较合适?
2.工厂方法(Factory Method) (对象创建型模式)
定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。

适用性
当一个类不知道它所必须创建的对象的类的时候。
当一个类希望由它的子类来指定它所创建的对象的时候。

3抽象工厂(Abstract Factory)(对象创建型模式)
提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。

透过这张图看着是不是有点眼熟啊?没错啊,抽象工厂里面隐藏着工厂方法啊。所以理解起来就简单了。
个人认为只要记住了这三张图,遇到类似的问题时就会用了。

设计原则
要依赖抽象,不要依赖具体。
参考资料:
《Head First 设计模式》
《设计模式-可复用面向对象的基础》
0 0
原创粉丝点击