iOS面试系列

面试回顾之三: 工厂模式

2015-03-16  本文已影响733人  西门魏国

1,简单工厂

定义: 专门定义一个类来负责创建其他类的实例,被创建的实例通常具有共同的父类

优点:简单工厂模式的优点是客户端可以直接消费产品,而不必关心具体产品的实现,消除了客户端直接创建产品对象的责任,实现了对责任的分割。

缺点:是工厂类记录了所有产品的创建逻辑,一旦不能正常工作,整个系统都会受到影响,而且当产品类多结构复杂的时候,把所有创建工作放进一个工厂中来,回事后期程序的扩展较为困难。

2,工厂方法

定义: 在基类中定义创建对象的一个接口,让子类决定实例化哪个类。工厂方法让一个类的实例化延迟到子类中进行

exp: 基类定义了创建和方法的接口, 子类去具体的实现

应用场景:

1. 编译时无法准备预期要生成的创建的对象的类

2. 类需要由子类决定运行时生成什么。

3,抽象工厂

定义: 抽象工厂提供一个固定的接口,用于创建一系列由关联或者相依存的对象,而不必指定其具体类或其创建的细节

上一篇 下一篇

猜你喜欢

热点阅读