从nestjs中学习设计模式

作为一个nodejs框架,nestjs有很多设计模式值得我们学习

依赖注入

模块之间的依赖关系通过注入命令来实现,将模块之间的依赖控制反转给框架层,达到松耦合、提高可维护性、可测试性的目的

单例模式

只有一个实例,节省内存并方便共享数据,比如只有一个数据库连接实例

观察者模式

事件机制使用了观察者模式,组件之间通过订阅-发布的形式来互相通讯啦

工厂模式

将多个类组成一个新的类(工厂类),通过一个配置来生成一个复杂的产品,比如配置一台电脑,我们给配置清单,工厂生成一台电脑。我们不需要聚焦电脑的cpu是如何生存的,只需要给出cpu的型号即可

装饰器模式

给一个类动态扩展功能,它和类的继承的最大的差别在是否可以动态添加属性。

相关推荐
Halo_tjn2 分钟前
Set集合专项实验
java·开发语言·前端·python
m0_564914924 分钟前
EDGE浏览器如何在新标签页打开收藏?EDGE浏览器如何打开书签不覆盖原网页?如何默认在新建标签页打开收藏夹书签?
前端·edge
司铭鸿19 分钟前
图论中的协同寻径:如何找到最小带权子图实现双源共达?
linux·前端·数据结构·数据库·算法·图论
电子科技圈20 分钟前
IAR与Quintauris携手推进RISC-V汽车实时应用的功能安全软件开发
嵌入式硬件·安全·设计模式·编辑器·汽车·risc-v
风宇啸天41 分钟前
令牌桶按用户维度限流
前端
safestar201243 分钟前
React 19 深度解析:从并发模式到数据获取的架构革命
前端·javascript·react.js
pengzhuofan1 小时前
Gateway微服务网关
微服务·架构·gateway
越努力越幸运5081 小时前
npm常见问题解决
前端·npm·node.js
Wild~~1 小时前
electron-vite
前端·javascript·electron
by__csdn1 小时前
Electron+Vite:实现electron + vue3 + ts + pinia + vite高效跨平台开发指南
前端·javascript·vue.js·typescript·electron·node.js·vue