为了账号安全,请及时绑定邮箱和手机立即绑定

模式的秘密——工厂模式

难度中级
时长 1小时 0分
学习人数
综合评分9.03
200人评价 查看评价
9.3 内容实用
8.9 简洁易懂
8.9 逻辑清晰
  • 抽象工厂模式类图
    查看全部
  • 一,工厂方法和抽象工厂方法的对比: 1)工厂模式是一种极端情况下的抽象工厂模式,通过前面的类图和代码实现我们可以看到这样一个对比,而抽象工厂模式可以看成是工厂模式的推广, 2)工厂模式用来创建一个产品的等级结构,而抽象工厂模式是用来创建多个产品的等级结构, 3)工厂模式只有一个抽象产品类,而抽象工厂模式有多个抽象产品类,总之就是单一对多个产品的这种对比。 二,工厂模式帮助我们实现了什么呢? 1)系统可以在不修改具体工厂角色的情况下引进新的产品, 2)客户端不必关系对象如何去创建,明确了职责,对象具体的创建交给了具体的产品,product1,product2,客户端只要告诉工厂我需要哪一,product1还是product2,它们具体是怎么创建的,怎么组合的,都交给了具体的产品product1,product2 3)更好的理解面向对象的原则,面向接口编程,而不是面向实现编程。 那我们整体的工厂模式就是这样一个原则。 三,工厂模式适用于哪些场景呢? 1)一个系统应当不依赖于产品类实例被创立,组成和表示的细节,就是说这个产品如何被创建,组成和表现,我们都归结到具体的产品是如何实现上去了,与前端的client,和中端的factory都是没有关系的, 2)这个系统的产品至少有一个产品族,工厂方法模式就是一个产品族,它是最简单的一个等级, 3)同属于同一个产品族的产品是设计成在一起使用的,这是毋庸置疑的,同属于一个系列的产品,就是在一起的, 4)不同的产品以一系列的接口的面貌出现,从未使系统不依赖于接口实现的细节,我们都是面向接口编程的,不是面向实现编程的,
    查看全部
    2 采集 收起 来源:总结

    2016-07-02

  • 我们通过代码认识工厂方法和抽象工厂方法,在现实的项目中,经常用到的组件和API都有工厂方法模式的体现 1,JDBC。连接数据库,访问数据库经常用到的,JDBC是执行SQL语句的API,JDBC可以为多种数据库提供统一的访问,它的实现过程: 1),首先是客户端client,到一个数据操作工厂,接着调用接口,返回相应的driver,有db2,mysql,oracle,sqlserver这几种常见的数据库,它可以平行扩展,它可以有很多种,这样就提供了统一的访问接口,这样客户端需要哪一种,告诉数据操作工厂就可以了,就是具体需要由客户端决定,这就是典型的工厂方法。 2,接下来看spring beanfactory,这是非常有名的工具,我们知道spring容器是一个控制反转,主要作用是生成bean,管理bean,从工厂模式来看,spring beanfactory就是生产bean,然后提供给客户端。 来看一下bean实例化的过程: 1)调用bena的默认构造方式生成bean的实例,暂称为instance1,如果在bean配置文件中注入了bean的属性,则在instance1基础上进行属性注入形成instance2,这种注入是覆盖性的,如果bean实现了InitializingBean接口,则调用afterPropertiesSet()方法,来改变或者操作instance2,得到instance3。其中:InitializingBean是spring提供的一个初始化bean的类,如果实现了这个类,则必须实现afterPropertiesSet()方法,接下来,如果bean的配置文件中指定了inti-method="init"属性,又会调用一个初始化方法,则在instance3的基础上又会进行一些改变,编程instance4.
    查看全部
    0 采集 收起 来源:总结

    2018-03-22

  • 功能虽然实现了,但是代码有缺陷: 我们每来一个新的发型,我们都需要建一个新的hair,而且我们要在客户端显示的调用,这样的代码既不利于维护,也不利于管理,为了解决这个问题,我们需要建一个hairFactory,对发型进行统一的管理。
    查看全部
    0 采集 收起 来源:工厂模式应用

    2016-07-02

  • 比较总结
    查看全部
    0 采集 收起 来源:总结

    2016-06-27

  • 抽象工厂模式类图
    查看全部
    0 采集 收起 来源:工厂模式概述

    2016-06-27

  • 工厂方法模式类图
    查看全部
    0 采集 收起 来源:工厂模式概述

    2016-06-27

  • 工厂模式与抽象工厂模式的区别
    查看全部
    0 采集 收起 来源:总结

    2016-06-27

  • 什么是工厂模式?
    查看全部
    0 采集 收起 来源:工厂模式概述

    2016-06-27

  • springbean的实例化的过程
    查看全部
    0 采集 收起 来源:总结

    2016-06-26

  • spring beanfactory
    查看全部
    0 采集 收起 来源:总结

    2016-06-26

  • 模型类图
    查看全部
  • 适用工厂模式的场景
    查看全部
    0 采集 收起 来源:工厂模式概述

    2016-06-26

  • 工厂模式的意图
    查看全部
    0 采集 收起 来源:工厂模式概述

    2016-06-26

  • 工厂模式的概念
    查看全部
    0 采集 收起 来源:工厂模式概述

    2016-06-26

举报

0/150
提交
取消
课程须知
本课程是 Java 开发课程的中级课程,希望各位小伙伴们在学习本课程之前,了解以下内容: 1、初步具备面向对象的设计思维 2、了解多态概念 3、了解反射
老师告诉你能学到什么?
1、理解工厂模式和抽象工厂模式的思想 2、工厂模式应用场景 3、抽象工厂模式应用场景

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!