安卓设计模式(八)工厂方法模式
工厂方法模式是创建性设计模式之一,一般用于复杂对象的创建
该系列其他文章:
下面以Androd经常用到的缓存Cache来举例说明:
缓存接口,定义所有缓存必须实现的方法
工厂方法根据需求又用几种不同的实现,不过思想是一致的,下面分别说明
1. 简单工厂(静态工厂)
如果我们程序中整体只需要一种缓存即可,不需要多种缓存,如磁盘缓存,所以只需要单一缓存子类及单一工厂即可:
2. 工厂与产品一对一,即每个工厂负责生产一种产品
3. 工厂与产品一对多,即每个工厂可以生产多种产品
工厂接口,定义所有工厂的必须实现的方法:
具体工厂,可根据需求生产不同的产品:
使用:
由以上可以的举例可以看到使用工厂方法创建对象简单明了,如果上面的缓存对象创建时需要设置很多参数,初始化数据等等,那么使用工厂方法模式相对于直接new一个实例有很大优势.工厂方法模式将对象的创建过程封装在工厂中,使得客户端无需再关心实例的创建和初始化过程.
实际开发中第三种使用的比较多,根据需求创建不同实例.