我是靠谱客的博主 帅气橘子,最近开发中收集的这篇文章主要介绍设计模式——工厂模式,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.工厂模式的主要目的是:实现了调用者和创建者分离,实例化对象,使用工厂类方法来替代new操作,将实现类,创建对象统一管理和控制。从而将调用者和实现类进行解耦。

2.工厂模式 类型:

  1. 简单工厂模式:用来生产已知的产品(对于新增的产品需要修改工厂类,违背了面向对象的ocp原则),示例代码链接简单工厂模式代码。
  2. 工厂方法模式:弥补了简单工厂模式中违背了OCP原则,对于新增的产品不需要修改之前的代码,只需要添加新的工厂类工厂方法模式代码。
  3. 抽象工厂模式:用于新增产品族(不同产品的集合,可能每个产品有不同的配置组合在一起)抽象工厂模式代码。

3简单工厂和工厂方法的优缺点:

  1. 结构复杂度:简单工厂只需要一个工厂类就可以,而工厂方法模式产品越多,工厂类就越多。
  2. 代码复杂度:简单工厂中的工厂类随着产品的增加,比较复杂每个产品都在一个工厂类中生产;工厂方法模式每个工厂类就只生产单个产品。
  3. 客户端编码难度:简单工厂模式直接使用静态方法创建工厂,而工厂方法模式需要对工厂类实例化。
  4. 虽然工厂方法模式符合OCP原则,实际上我们一般使用简单工厂模式。

4.应用场景:

  1. JDK中Calendar的getInstance方法
  2. JDBC中Connection对象的获取
  3. Hibernate中SessionFactory创建Session
  4. spring中IOC容器创建管理bean对象
  5. XML解析时的DocumentBuilderFactory创建解析器对象
  6. 反射中Class对象的newInstance()

最后

以上就是帅气橘子为你收集整理的设计模式——工厂模式的全部内容,希望文章能够帮你解决设计模式——工厂模式所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(62)

评论列表共有 0 条评论

立即
投稿
返回
顶部