从nestjs中学习设计模式

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

依赖注入

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

单例模式

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

观察者模式

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

工厂模式

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

装饰器模式

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

相关推荐
DianSan_ERP8 小时前
电商架构演进:如何在高并发场景下实现多平台API的标准化履约?
运维·前端·网络·安全·架构·自动化
喜欢的名字被抢了9 小时前
FastAPI 取代 Flask 的底层逻辑:一场类型驱动的 API 架构革命
架构·flask·fastapi
researcher-Jiang10 小时前
Design Patterns——Template Method入门到情景实战
python·设计模式·模板方法模式
碎_浪11 小时前
给键盘党的英语记忆工具:我做了一款「打字背单词」桌面应用
前端·程序员·ai编程
zhanghaofaowhrql12 小时前
vLLM 与 SGLang 推理框架性能横评:架构、吞吐与延迟的深度解析
架构·vllm·sglang
珠海西格电力12 小时前
云边端协同架构:零碳园区管理系统的技术底座
大数据·运维·人工智能·算法·架构·能源
阿成学长_Cain12 小时前
Linux dirs命令详解|Bash目录堆栈管理快速切换目录实战教程
linux·运维·前端·数据库
yqcoder13 小时前
httpOnly 是什么,又有什么用?
开发语言·前端·javascript
IT_陈寒13 小时前
Java的Stream.parallel()把我CPU跑爆了,这种优化要谨慎
前端·人工智能·后端