简单工厂
2019-03-01 本文已影响0人
XZhongWen
iOS设计模式 - 简单工厂
原理图
SimplyFactory.png说明
- 客户端不直接通过产品的实现类来实例化产品, 而是通过持有工厂, 调用工厂方法来获取产品实例; 工厂统一负责产品的实例化过程.
- 工厂所生产的产品一般都具有一些相同的特征. 如手机工厂可以生产苹果手机, 安卓手机, 诺基亚手机等, 不同品牌的手机都具有手机共同的特征.
- 工厂类以及其实例化出来的子类都不是抽象类,所以称之为简单工厂.
- 简单工厂灵活性较差,但其简单直白的特性,适用于层级结构简单的场景.
代码实现
- 手机工厂
CellPhoneFactory.h
CellPhoneFactory.png
CellPhoneFactory.m
CellPhoneFactory I.png
- 手机共同具有的特征
CellPhoneProtocol
CellPhoneProtocol.png
- 具体的手机产品 (都遵守CellPhoneProtocol协议)
iphone
iPhone.png
Android
Android.png