软件设计师 · 高频练习

工厂方法模式解决什么问题?

中级 单选题 第 4 题 中等 软件设计师工厂方法模式软件设计师设计模式
题目

某系统需要根据不同业务场景创建不同类型的产品对象,并希望把对象创建逻辑延迟到子类中完成。此时更适合采用哪一种设计模式?

A 观察者模式
B 工厂方法模式
C 适配器模式
D 装饰器模式
题目类型:原创高频练习题 用途:用于帮助理解软件设计师相关考点和答案解析,不等同于官方真题。
正确答案
B
答案解析

工厂方法模式把具体产品的创建延迟到子类,由子类决定实例化哪一个具体类。它的重点不是通知、接口转换或动态增强,而是把创建对象的职责从使用者那里分离出去。

选项分析

A

错误。观察者模式关注一对多通知,例如状态变化后通知多个订阅者。

B

正确。工厂方法模式通过子类决定创建哪一种具体产品。

C

错误。适配器模式用于解决接口不兼容问题。

D

错误。装饰器模式用于在不改变原类的情况下动态增加职责。

先看结论

简短答案

工厂方法模式解决什么问题,正确答案是 B(工厂方法模式)。工厂方法模式把具体产品的创建延迟到子类,由子类决定实例化哪一个具体类。它的重点不是通知、接口转换或动态增强,而是把创建对象的职责从使用者那里分离出去。

解析

易混淆概念对比表

概念本题判断区别要点记忆提示
观察者模式 本题干扰项 错误。观察者模式关注一对多通知,例如状态变化后通知多个订阅者。 看到该词不要急着选,先判断是否真正解决题干问题
工厂方法模式 本题正确答案 正确。工厂方法模式通过子类决定创建哪一种具体产品。 看到题干核心场景时优先联想到它
适配器模式 本题干扰项 错误。适配器模式用于解决接口不兼容问题。 看到该词不要急着选,先判断是否真正解决题干问题
装饰器模式 本题干扰项 错误。装饰器模式用于在不改变原类的情况下动态增加职责。 看到该词不要急着选,先判断是否真正解决题干问题
本题易混淆选项怎么区分
  • 观察者模式:错误。观察者模式关注一对多通知,例如状态变化后通知多个订阅者。
  • 适配器模式:错误。适配器模式用于解决接口不兼容问题。
  • 装饰器模式:错误。装饰器模式用于在不改变原类的情况下动态增加职责。
复习

知识点详解

软件设计师设计模式是软件设计师考试中需要结合场景理解的考点。围绕“工厂方法模式解决什么问题”这类题目,复习时要先看题干描述的是概念定义、适用场景、作用效果,还是与其他选项的区别。本题的题干关键词是“某系统需要根据不同业务场景创建不同类型的产品对象,并希望把对象创建逻辑延迟到子类中完成。此时更适合采用哪一种设计模式”,它指向的核心答案是 B(工厂方法模式)。

备考速记

备考速记:题干如果强调“软件设计师设计模式”中的关键目标,就先联想到 软件设计师设计模式;如果选项里出现 观察者模式、适配器模式、装饰器模式,不要只看名称熟悉,要判断它们是否真正对应题干场景。

软件设计师设计模式在软件设计师设计模式场景中的作用

软件设计师设计模式在本题中的核心价值,是解决“某系统需要根据不同业务场景创建不同类型的产品对象,并希望把对象创建逻辑延迟到子类中完成。此时更适合采用哪一种设计模式”这个场景问题。复习时不要只背选项名称,还要理解它为什么适用于该场景,以及它能解决哪类安全、流程或管理问题。

拓展

同类题怎么考

  • 给出软件设计师设计模式场景,判断应该选择哪个概念、工具、协议或管理过程。
  • 考查软件设计师设计模式的作用,要求从四个相近选项中找出最符合题干目标的一项。
  • 把软件设计师设计模式和观察者模式、适配器模式、装饰器模式放在一起考,重点看适用场景是否一致。
  • 题干通常会出现一个关键动作或目标,先定位关键词,再回到选项逐一排除。
软件设计师设计模式在软件设计师软考中的考法

软考选择题通常不会只考概念定义,还会把软件设计师设计模式放到软件设计师设计模式场景中,要求判断它的作用、适用范围或与相近概念的区别。遇到这类题时,先抓住题干中的业务场景,再看哪个选项最能解决该场景下的核心问题。

解题思路

这道题不要被“不同业务场景”带偏,真正的题眼是“创建不同产品对象”和“延迟到子类”。这两个词合在一起,基本就锁定工厂方法模式。

考点定位

本题考查软件设计师中的“工厂方法模式”。这类题通常不会只问死记硬背的定义,而是把概念放进一个小场景里,让考生判断哪个术语、方法或模型最匹配。

易错提醒

  • 看到“创建对象”不要马上选简单工厂,软考题更常考工厂方法和抽象工厂的区别。
  • 工厂方法通常对应一个产品等级结构;抽象工厂更偏向创建一族相关产品。

备考提示

  • 设计模式题建议先判断意图:创建型、结构型、行为型。工厂方法属于创建型模式。

你可能还想了解

  • 工厂方法模式解决什么问题?
  • 软件设计师设计模式是什么?
  • 软件设计师设计模式在软件设计师考试中怎么考?
  • 软件设计师软件设计师设计模式题怎么理解?
  • 软件设计师设计模式怎么考?
  • 工厂方法模式怎么考?

本文小结

本题核心考点是软件设计师设计模式在软件设计师设计模式场景中的判断和应用。遇到类似题目时,先看题干描述的目标,再判断哪个选项最符合场景;本题应选择 B(工厂方法模式)。