简单说就是通过一个对象创建出另一个对象。
实现方式
某个类有一个实例方法,该实例方法需要传一个对象类型的参数,返回一个对象类型的结果。返回的对象的具体创建逻辑都被封装在了该实例方法中。
伪代码:
/// 传入一个Person对象,返回一个Email对象
func createEmail(person: Person) -> Email {
return Email(email: person.email)
}
主要目标
将对象的创建逻辑封装起来
例子
通过不同的model创建不同的cell
demo地址:
https://github.com/yangguanghei/TableViewCell_FactoryDesign
网友评论