ios设计模式读书笔记----Factory Method(工厂方法)
2013-09-25 21:55
671 查看
定义一个用于创建对象的接口,让子类决定实例化哪个对象。Factory Method使一个类的实例化延迟到子类。
定义于《设计模式》
Product
----定义/ 工厂方法需要创建的对象/ 的接口
ConcreteProduct
----实现Product接口
creator
----声明工厂方法,该方法返回一个Product类型的对象。creator也定义一个工厂方法的默认实现,返回一个默认的Concretecreator对象。
Concretecreator
----重写工厂方法以返回一个Concretecreator实例。
协作
Creator依赖于它的子类来定义工厂方法,所以它返回一个适当的ConcreteProduct实例。
意义
可以把工厂方法想象成一个接口,会根据你传入的类型而生产相应的类型。
比如NSNumber,它并不不知道要实例哪个对象,所以定义了一套初始化方法,有客户端来决定初始化对象。
可以灵活的添加“产品”而无需改变客户端代码。
实现
“产品”由“工厂”生产,一个具体的工厂产生一个具体的产品。客户端拥有一个“工厂”,并产生一个“产品”。
定义于《设计模式》
Product
----定义/ 工厂方法需要创建的对象/ 的接口
ConcreteProduct
----实现Product接口
creator
----声明工厂方法,该方法返回一个Product类型的对象。creator也定义一个工厂方法的默认实现,返回一个默认的Concretecreator对象。
Concretecreator
----重写工厂方法以返回一个Concretecreator实例。
协作
Creator依赖于它的子类来定义工厂方法,所以它返回一个适当的ConcreteProduct实例。
意义
可以把工厂方法想象成一个接口,会根据你传入的类型而生产相应的类型。
比如NSNumber,它并不不知道要实例哪个对象,所以定义了一套初始化方法,有客户端来决定初始化对象。
可以灵活的添加“产品”而无需改变客户端代码。
实现
“产品”由“工厂”生产,一个具体的工厂产生一个具体的产品。客户端拥有一个“工厂”,并产生一个“产品”。
相关文章推荐
- iOS 设计模式之简单工厂方法模式(SimpleFactoryMethod)
- 学习笔记系列之NET设计模式(3):工厂方法(Factory Method)
- 23设计模式之工厂方法(FactoryMethod)
- c++ 设计模式8 (Factory Method 工厂方法)
- 设计模式-工厂方法(Factory Method)
- C#面向对象设计模式纵横谈(四) --- Factory Method 工厂方法(创建型模式)
- (Factory method)工厂方法设计模式
- 23种设计模式-FactoryMethod工厂方法
- 设计模式之工厂方法(factory method)
- 设计模式--工厂方法(FactoryMethod)
- 设计模式-3.3 Factory Method(工厂方法) 对象创建型模式
- 设计模式之工厂方法(Factory Method)
- 设计模式四:Factory method工厂方法——对象创建型模式
- 设计模式学习笔记四:工厂方法(Factory Method)
- 设计模式-简单工厂模式/静态工厂方法(Static Factory Method)
- 设计模式之:工厂方法(Factory Method)
- 【设计模式】——工厂方法FactoryMethod
- 深入浅出设计模式 ------ Factory Method(工厂方法)
- 设计模式------工厂方法(Factory Method)
- 设计模式学习之 Factory method (工厂方法)