作为一个nodejs框架,nestjs有很多设计模式值得我们学习
依赖注入
模块之间的依赖关系通过注入命令来实现,将模块之间的依赖控制反转给框架层,达到松耦合、提高可维护性、可测试性的目的
单例模式
只有一个实例,节省内存并方便共享数据,比如只有一个数据库连接实例
观察者模式
事件机制使用了观察者模式,组件之间通过订阅-发布的形式来互相通讯啦
工厂模式
将多个类组成一个新的类(工厂类),通过一个配置来生成一个复杂的产品,比如配置一台电脑,我们给配置清单,工厂生成一台电脑。我们不需要聚焦电脑的cpu是如何生存的,只需要给出cpu的型号即可
装饰器模式
给一个类动态
扩展功能,它和类的继承的最大的差别在是否可以动态添加属性。