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

工场模式:抽象工厂

2012-07-27 
工厂模式:抽象工厂接着上一篇说过的工厂方法,这节来谈一谈抽象工厂:首先来看一个设计原则依赖倒置原则:要

工厂模式:抽象工厂

接着上一篇说过的工厂方法,这节来谈一谈抽象工厂:

首先来看一个设计原则

依赖倒置原则:要依赖抽象,不要依赖具体类。不能让高层组件依赖低层组件,而且,不管高层或低层组件,“两者”都应该依赖于抽象。

?

再回到比萨店:

使用工厂方法后,各地的比萨加盟店生意火爆,但也有些加盟店使用劣质原料,导致信誉下降。

现在我们要创建一个工厂来生产原料,这个工厂负责创建原料家族中的每一种原料。

先来为原料工厂定义一个接口

?

工厂方法与抽象工厂的区别:

两个工厂都是负责创建对象,工厂方法是使用继承抽象方法,这意味着利用工厂方法创建对象,需要扩展一个类,并覆盖它的工厂方法。

抽象工厂负责创建一个产吕家族的抽象类型,这个类型的子类定义了产品被产生的方法。要想使用这个工厂必须先实例化它。然后将它传入

一些针对抽象类型所写的代码中。

它们两个的区别是:抽象工厂需要一个大的接口,因为它是用来创建整个产品家族的(比如,从多原料,每个原料都是一个对象,那么一次就要生产多个对象),

而工厂方法只是创建一个产品,所以根本不需要一个大的接口,只需要一个方法就可以了。

抽象工厂的具体工厂一般使用工厂方法来创建它们的产品,

热点排行