Nestjs最佳实践
课时介绍
课程介绍
一套目前来说最好的nestjs实战教程,提供QQ长期问答服务.
本人从 08 年到 18 年一直从事于 PHP 的开发。从 18 年开始转向 Typescript+React+Nestjs 的技术栈。目前来说 React 应该是一个非常好用的前端框架,生态非常完善,并且十分灵活简单。Nestjs 则是 Node.js 中唯一且无敌存在的后端 web 框架。因为我个人从事这套技术栈开发已经 4 年多,所以颇有心得,做了这套 React18 视频教程和 Nestjs 实战视频教程。现在视频教程也是刚刚开始做了一部分,还在持续更新。使用 TS 全栈开发可以基本涵盖各种平台的方方面面,比如开发桌面应用的 Electron, 开发小程序的 Taro, 开发 Spa 中后台的 React,开发 SSR 网站的 next.js,开发移动应用的 React Native, 开发 CLI 的 Yargs, 以及开发后端的 Nestjs。
基本学会一套,全面够用,再加上 Monorepo 组织结构,一个仓库所有平台都可以搞定。
包含以下知识点
- 掌握Nestjs框架的依赖注入,模块,提供者,生命周期等概念
- 掌握DTO数据验证,响应序列化,异常过滤器等常用功能
- 学会编写一些常用的class-validator验证约束
- 熟练掌握Typeorm以及Nestjs与Typeorm结合开发
- 学会整合Swagger输出Open API文档
- 掌握TS装饰器以及反射元数据的定义和使用
- 编写一些数据库相关的数据验证约束(比如树形表的同级别某字段唯一验证等)
- 学会通过继承并魔改Nestjs源码编写自定义的全局验证器
- 可以编写自定义的配置系统以及核心功能包
- 学会自定义的代码组织方式(比如教程中我把默认的Nestjs应用改成Util+PluginModule模式)
- 掌握编写一些常用的Util仓库(比如数据库,Redis,Restful)
- 利用Yargs结合魔改后的框架可以编写一些自定义CLI命令(比如数据迁移,数据填充等)
- 掌握如何利用阿里云/腾讯云推送邮件和短信
- 掌握使用消息列队(MQ)的方式异步推送邮件和短信
- 掌握守卫原理以及编写一些用户验证的守卫
- 编写一个完善的用户系统(JWT认证,短信/邮件登录,短信/邮件注册,找回密码,绑定手机和邮箱等)
- 熟练地通过编写装饰器去实现一些常用的功能
- 通过SSE,WebSockets实现用户的上线,下线以及消息实时推送,消息广播等
- 学会使用云存储来上传文件
- 学会大文件断点雪川
- 实现RBAC的权限系统
- 理解请求范围概念以及性能方便的考量
- 自己构建配置系统,实现配置验证以及通过YAML或数据库来进行动态配置
- 通过适用Vscode进行Debug以及编写Jest测试来提升开发效率与程序的可用性
- 学会使用Node来编写自定义的CLI命令
- 利用NestCURD进行快速开发
- 学会Graphql替代Restful写API
- 使用Mongodb替代关系型数据库
- 掌握一些常用的打包工具,比如通过ncc打包成单文件,通过pack打包成二进制等
- 学会一些常用的部署方式,比如通过nginx+pm2反向代理部署,devops自动化CI,CD等
- 学会使用pnpm workspaces来使用monreopo组织代码
信息系统项目管理师自考笔记
李明 · 513人在学
python从0到1:期货量化交易系统(CTP实战,高频及合成K线数据
王先生 · 20584人在学
手把手搭建Java超市管理系统【附源码】(毕设)
汤小洋 · 4048人在学
Java毕设springboot外卖点餐系统 毕业设计毕设源码 使用教
黄菊华 · 732人在学
基于SSM酒店管理系统(毕设)
小尼老师 · 785人在学
java项目实战之购物商城(java毕业设计)
Long · 5073人在学
手把手搭建Java求职招聘系统【附源码】(毕设)
汤小洋 · 1458人在学
Python Django 深度学习 小程序
钟翔 · 2234人在学
城管局门前三包管理系统+微信小程序(vue+springboot)
赖国荣 · 497人在学
Vue+Uni-app(uniapp)入门与实战+赠送仿美团点餐小程序
李杰 · 3843人在学