zoukankan      html  css  js  c++  java
  • 设计模式之工厂模式

    大学学的最多的就是据结构和算法,不可否认,数据结构和算法非常重要,是编程的基石。但是在实际开发过程中,除非做的是比较底层的开发,否则的话,对设计模式的运用要比对数据结构和算法的运用要多。今天就来聊聊设计模式中的工厂模式,工厂模式是广义上的说法,实际上具体到实处分为三个,分别为简单工厂模式、工厂方法模式、抽象工厂模式。

    看到这里,对工厂模式没有了解的人,会有几个疑惑。

    一、什么是工厂模式?

      想要理解什么是工厂模式,首先要理解什么是工厂。工厂大家都知道就是一个生产产品的地方。比如,你想要一双鞋,就需要将你需要一双鞋的想法告诉工厂,然后工厂调出这双鞋的设计图根据设计图生产出一双具体的鞋给你。在面向对象的设计中,我们可以把每一个需要new出来的对象看成一个个产品,那就需要有一个工厂类来专门new出对象。工厂模式就是用来不让需要的模块自己实例化需要的对象,而是统一交给工厂类来实例化对象,然后将实例返回给需要的模块。

    二、为什么要用工厂模式?

      一个程序不是完成了功能就了事的,还需要考虑到后期的扩展和维护。当后期需要扩展的时候,如果能做到只是增加代码,而不需要修改原有的代码,那么这个程序的扩展性就是合格的。运用工厂模式就是保证程序的扩展性。举个简单的例子:当你的项目需要连接数据库的时候,你就会写一个类,将你要对数据库的连接操作和后续的一些查询、插入、删除等操作都封装起来。这时候,当你需要连接数据库的时候只要实例化这个数据库类,调用里面的相应的方法就可以连接数据库和操作数据库了。但是你要知道,一个项目中,需要操作数据库的地方是很多,所有,你要在很多地方实例化数据库类。(未完待续)

  • 相关阅读:
    Ubuntu搭建flask服务器, 部署sklearn 机器学习模型
    Jupyter-notebook 显示图片的两种方法
    Linux多版本opencv指定 & CMake中 find_package()的原理解析
    使用C++调用pytorch模型(Linux)
    Arch / Manjaro Linux下 Opencv 编译 配置 查看
    获取路径下所有特定格式文件列表
    Pycharm相对路径
    opencv 与操作 bitwise_and
    vim学习
    opencv 旋转 点旋转 以及 逆旋转
  • 原文地址:https://www.cnblogs.com/yangwenxin/p/7235635.html
Copyright © 2011-2022 走看看