具体请 前往 码读空间-面试应用题库 微信小程序阅读
一、模式介绍
创建型模式是 GOF 经典五大对象创建方案,核心目标分离对象创建与业务使用,屏蔽 new 直接实例化的硬编码耦合,灵活管控实例生成逻辑,适配单实例、多品类、复杂组装、克隆复用、系列产品等各类开发场景,是后端、前端、客户端工程化开发的基础编码规范。包含 5 大核心模式:单例、工厂方法、抽象工厂、建造者、原型。
二、模式组成(通用角色框架)
抽象顶层
:定义创建 / 构建统一接口,规范标准行为
具体实现
:落地对象实例化、组装、克隆逻辑
产品实体
:最终产出的目标对象
指挥 / 调度者
(建造者 / 工厂特有):统筹创建流程,隔离客户端细节
客户端
:仅调用创建接口,不感知底层构造逻辑
三、落地用例
单例:全局配置、日志管理器、数据库连接池
工厂方法:支付渠道、消息推送、文件解析器
抽象工厂:跨端 UI 组件、多数据库驱动、全套业务模块
建造者:复杂订单、表单、电脑 / 汽车配置、报表模板
原型:高频复制对象(审批模板、弹窗配置、游戏角色)
四、模式扩展与联动
扩展原则:遵循开闭原则,新增产品仅新增实现类,不修改原有创建逻辑
组合用法:抽象工厂内嵌建造者生成复杂产品;工厂搭配单例控制工厂全局唯一;原型结合缓存减少重复实例开销;多工厂分层拆分业务品类,降低类膨胀问题
退化场景:产品单一,抽象工厂可简化为工厂方法;属性简单的对象,建造者可替换为普通构造器
五、模式实现要点
单例:私有化构造,静态全局访问点,区分饿汉 / 懒汉 / 双重锁实现,规避多线程并发问题
工厂系列:抽离产品接口,工厂类独立负责实例生成,客户端依赖抽象而非具体类
建造者:分步构建组件,指挥者统一组装,支持同流程生成不同成品
原型:实现克隆接口,浅拷贝 / 深拷贝按需区分,优化大量对象创建性能
统一优势:降低代码耦合、便于单元测试、统一管控对象生命周期,大幅提升项目可维护性