设计模式之工厂模式
大学学的最多的就是据结构和算法,不可否认,数据结构和算法非常重要,是编程的基石。但是在实际开发过程中,除非做的是比较底层的开发,否则的话,对设计模式的运用要比对数据结构和算法的运用要多。今天就来聊聊设计模式中的工厂模式,工厂模式是广义上的说法,实际上具体到实处分为三个,分别为简单工厂模式、工厂方法模式、抽象工厂模式。
看到这里,对工厂模式没有了解的人,会有几个疑惑。
一、什么是工厂模式?
想要理解什么是工厂模式,首先要理解什么是工厂。工厂大家都知道就是一个生产产品的地方。比如,你想要一双鞋,就需要将你需要一双鞋的想法告诉工厂,然后工厂调出这双鞋的设计图根据设计图生产出一双具体的鞋给你。在面向对象的设计中,我们可以把每一个需要new出来的对象看成一个个产品,那就需要有一个工厂类来专门new出对象。工厂模式就是用来不让需要的模块自己实例化需要的对象,而是统一交给工厂类来实例化对象,然后将实例返回给需要的模块。
二、为什么要用工厂模式?
一个程序不是完成了功能就了事的,还需要考虑到后期的扩展和维护。当后期需要扩展的时候,如果能做到只是增加代码,而不需要修改原有的代码,那么这个程序的扩展性就是合格的。运用工厂模式就是保证程序的扩展性。举个简单的例子:当你的项目需要连接数据库的时候,你就会写一个类,将你要对数据库的连接操作和后续的一些查询、插入、删除等操作都封装起来。这时候,当你需要连接数据库的时候只要实例化这个数据库类,调用里面的相应的方法就可以连接数据库和操作数据库了。但是你要知道,一个项目中,需要操作数据库的地方是很多,所有,你要在很多地方实例化数据库类。(未完待续)