简单工厂模式
- 定义:由一个工厂对象决定创建出哪一种产品类的实例
- 类型:创建型,但不属于 GOF 23 种类设计模式
- 适用场景:
- 工厂类负责创建的对象比较少
- 客户端(应用层)只知道传入工厂类的参数,对于创建对象对象(逻辑)不关心
- 优点:只需要传入一个正确的参数,就可以获取你所需要的对象,无需知道其创建细节
- 缺点:工厂类的职责相对过重,增加新的产品需要修改工厂类的判断逻辑,违背开闭原则
简单工厂模式中,应用层 Test
通过一个工厂类 VideoFactory
来获取一个对象。从应用层来看,这样做的优点是不需要单独创建一个 video 对象,而是采用工厂统一来创建对象,应用层只需要传入参数就可以了。
入参可能是字符串等,通过逻辑判断来返回相应的实例对象;入参也有可能是一个类,通过反射来获取对象。