【发布时间】:2016-06-16 09:10:23
【问题描述】:
我对“工厂相关”设计模式及其 OOP 实现的理解一直很简单。
- “工厂方法”是类中的一种方法,它具有接口(或抽象类)作为返回类型,并根据一些内部逻辑构造实现该接口的对象。
- “Factory”是一个只包含工厂方法的类
- “抽象工厂”是只包含工厂方法的接口(或抽象类)
但我最近偶然发现了有关该主题的 Wikipeda 文章(Factory、Abstract factory),这让我有些困惑,尤其是关于 OOP 中的“工厂” 是什么。
这里有几个引用:
- 返回“新”对象的子例程可以称为“工厂”,如工厂方法或工厂函数。
- 工厂用于各种设计模式
- “抽象工厂模式”是一种构建工厂集合的方法。
- 工厂是代码中构建对象的具体类的位置
这引起了一些问题:
(1)&(2) 这是否意味着工厂不是类或对象,而是一段逻辑?
(2) “工厂”本身不是一种模式吗?
(3) 这里的“收藏”是什么意思?这只是一种说法“你可以有几个实现相同接口的工厂(这是一个抽象工厂)”?
(4) 什么???
谁能解释一下这是什么意思?我对工厂的初步理解是错误的吗?
【问题讨论】:
-
@jaco0646,不,你提到的问题是关于“抽象工厂”和“工厂方法”的,而这个是关于“工厂”的。
标签: oop design-patterns factory