ホームページ  >  記事  >  データベース  >  2.4 《硬啃设计模式》第6章 “妞”太多,如何管理?(3)

2.4 《硬啃设计模式》第6章 “妞”太多,如何管理?(3)

WBOY
WBOYオリジナル
2016-06-07 15:00:171027ブラウズ

我在实际工作中我也没有用过抽象工厂,下面简单谈谈我的理解,供大家参考。 类图 : 说明:图中黄底色文字不是类图的一部分,仅是用来说明的。 有时候我们希望能得到一系列对象,不是一个对象,这时我们可考虑用抽象工厂,抽象工厂中有多个方法,分别得到不

我在实际工作中我也没有用过抽象工厂,下面简单谈谈我的理解,供大家参考。

类图
2.4 《硬啃设计模式》第6章 “妞”太多,如何管理?(3)

说明:图中黄底色文字不是类图的一部分,仅是用来说明的。

有时候我们希望能得到一系列对象,不是一个对象,这时我们可考虑用抽象工厂,抽象工厂中有多个方法,分别得到不同的对象。
如果仅是这样,我们不需要对工厂进行抽象,抽象工厂模式中要将工厂及产品都定义为接口,其目的就是如果程序想不加区别地得多个不同系列的对象,这时就需要实现这些接口。

接口Factory定义了产生ProductA、ProductB的方法,如果需要产生更多的产品,可定义更多的方法。

ConcreteFactory1实现了Factory接口,该类专门生产ConcreteProductA1、ConcreteProductB1产品;同理ConcreteFactory2专门生产ConcreteProductA2、ConcreteProductB2产品。


这些具体工厂和产品都是实现了Factory、ProductA、ProductB接口的,故程序可以不加区别地处理。



 

请看下一文……

 

 

 

作者:张传波

创新工场创业课堂(敏捷课程)讲师

软件研发管理资深顾问

CMMI首席专家

《火球——UML大战需求分析》作者

《硬啃设计模式》作者

www.umlonline.org创办人

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。