设计模式——抽象工厂方法模式
抽象工厂方法设计模式详解
—— 像搭积木一样创建“产品家族”
一、生活化理解
想象你要装修房子,需要买一整套家具(沙发+茶几+电视柜)。这时候有两种选择:
- 自己搭配:宜家买沙发、淘宝买茶几、线下店买电视柜(风格容易混乱)
- 整体套餐:直接选「北欧风全家桶」或「中式古典套装」(风格统一,成套供应)
抽象工厂模式就是这个“全家桶工厂”——它负责生产相互关联的一组产品,确保这些产品在设计风格、功能特性上保持兼容。
二、模式结构解析
用家具工厂举例:
角色 | 对应示例 | 职责说明 |
---|---|---|
抽象工厂 | FurnitureFactory |
定义生产沙发/茶几的通用方法 |
具体工厂 | NordicFactory (北欧工厂) |
实现具体风格的产品创建逻辑 |
抽象产品 | Sofa 、CoffeeTable |
定义产品的通用功能接口 |
具体产品 | NordicSofa (北欧沙发) |
实现特定风格的产品细节 |