1 官方定义
简单工厂模式,官方定义中不包含简单工厂模式,但它是实际应用中比较常用的模式。
2 个人理解
简单理解。简单工厂模式实现了接口和实现的接耦。
2.1 场景案例
对外提供API接口,提供三个功能:
1、造一辆特斯拉;
2、造一辆比亚迪;
3、造一辆大众;
2.1.1 传统
对外公布的头文件中提供三个造车的函数。
car* createTSL();
car* createBYD();
car* createDZ();
2.1.2 简单工厂模式
对外提供一个造车的函数和入参type的数据字典
car* createCar(int type) //返回一辆车
字段 | 字典值 | 释义 |
---|---|---|
type | 1 | 返回特斯拉 |
type | 2 | 返回比亚迪 |
type | 3 | 返回大众 |
2.2 说明
简单工厂模式,实现了接口的隔离。对外提供API接口时,保证接口不变。以后发展迭代,只调整入参的数据字典。
3 源代码展示
3.1 传统模式
略
3.2 简单工厂模式
略