开始
本篇文章是2023暑期青训营实践笔记的第三篇~
掘金送的vip还有一张借阅卡,我在精美的掘金小册中翻来找去,选择了可以配合课程学习的,以我目前的能力适合学习的小册,由于课程已经过去了挺久的,本文主要是借助小册对课程内容进行复习.
本篇文章主要记录了设计模式中的工厂模式.
工厂模式
工厂模式就是将创建对象的过程单独封装,这样的操作就是工厂模式.
对拓展开放,对修改封闭。说得更准确点,软件实体(类、模块、函数)可以扩展,但是不可修改。
工厂模式就是使用构造器快速构成类似的数据,不需要人工手动去写明那个属性,只需直接传递参数就好,构造器像工厂一样去加工我们传过去的"原材料",实现我们需要的"成品" 如果工厂模式使用不当,不仅不能减少工作量,随着代码的增加还会变得难以维护.因此这个封装的过程要做到将"变"与"不变"分离,同时想清楚各个实例间的共性,对工厂进行抽象,在保持"开放封闭"的原则下对工厂进行处理.
举个例子
假如我有一个苹果,一个茄子,他们都是植物,但又分别是水果和蔬菜,那么他们的共性就是植物,假如我后来加入八角,这是一个调味料,这时我不用去修改植物,蔬菜或者水果,而是新建立一个类,这个类不会产生任何修改,而是去扩展,同时它还有了植物的共性,这就是遵循"开放封闭"的工厂模式.
使用工厂模式的目的是为了可以自由的传参,无需考虑其他问题.工厂模式简化了我们使用构造器的过程,在使用构造器创建对象时,就可以考虑到这个模式.如果做到了这一点,这就是一个成功的工厂设计.
结语
感觉设计模式非常的神奇,在只了解名字的时候感觉云里雾里,知道简单的设计模式后又感觉设计模式很简单,比如工厂模式与单例模式都在实际编码中使用过.但是接着了解下去其他设计模式都是眼睛看懂了,手一点没学会.要学会设计模式不能只依靠记忆背诵,还要结合实际操作.