知识卡片

抽象工厂模式的定义是工厂方法的升级版

普通读书笔记卡 · 1854.a

内容

抽象工厂模式为创建一组相关或相互依赖的对象提供接口,不需指定具体类,是[[工厂方法模式的定义与命令简化原理]]在多个业务品种/分类时的升级版。女娲造人第二版用肤色和性别两个坐标 确定人种对象:肤色对应产品,性别对应工厂(如FemaleFactory一次生产三种肤色的女性)。 发散:工厂方法只用一个坐标(产品类型)确定对象,抽象工厂用两个坐标(产品族+产品等级), 这正是”升级版”的含义。

参考来源

- 位置:《设计模式之禅(第2版)》第9章《抽象工厂模式》(源文件:_epub-src/text/part0038.html、part0039.html) - 结论依据:原文用肤色(Y坐标)与性别(X坐标)确定一个具体人种对象,设计出FemaleFactory/MaleFactory两个工厂类各自生产三种肤色的产品,随后给出正式定义并说明"抽象工厂模式是工厂方法模式的升级版本,在有多个业务品种、业务分类时"适用。 - 原始内容:为创建一组相关或相互依赖的对象提供一个接口,而且无须指定它们的具体类……抽象工厂模式是工厂方法模式的升级版本,在有多个业务品种、业务分类时,通过抽象工厂模式产生需要的对象是一种非常好的解决方式。