从nestjs中学习设计模式

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

依赖注入

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

单例模式

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

观察者模式

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

工厂模式

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

装饰器模式

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

相关推荐
fanruitian3 小时前
uniapp android开发 测试板本与发行版本
前端·javascript·uni-app
rayufo3 小时前
【工具】列出指定文件夹下所有的目录和文件
开发语言·前端·python
java干货3 小时前
<span class=“js_title_inner“>微服务:把一个简单的问题,拆成 100 个网络问题</span>
微服务·云原生·架构
RANCE_atttackkk3 小时前
[Java]实现使用邮箱找回密码的功能
java·开发语言·前端·spring boot·intellij-idea·idea
成茂峰3 小时前
软考高级·系统架构设计师 | 一、绪论
架构·系统架构·软考高级·系统架构设计师
2501_944525544 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 支出分析页面
android·开发语言·前端·javascript·flutter
传感器与混合集成电路4 小时前
210℃与175℃高温存储器选型研究:LHM256MB与LDMF4GA-H架构与可靠性对比(下)
架构
铁蛋AI编程实战5 小时前
大模型本地轻量化微调+端侧部署实战(免高端GPU/16G PC可运行)
人工智能·架构·开源
Warren2Lynch5 小时前
2026年专业软件工程与企业架构的智能化演进
人工智能·架构·软件工程
李白你好5 小时前
Burp Suite插件用于自动检测Web应用程序中的未授权访问漏洞
前端