编码环境搭建

42 未经授权,禁止转载了解课程
课程介绍
讨论{{interaction.discussNum ? '(' + interaction.discussNum + ')' : ''}}
适合人群
1. 需要学习一门后端开发技术,但是不想花太多精力学习新语言的前端开发者 2.想从java,php等传统后台转ts全栈开发的工程师 3.初步掌握typescript或者Node.js的同学
你将会学到
完全掌握nestjs和node.js,包含monorepo架设,cli构建,消息列队等技能
  • node.js;typescript;nestjs;
课程简介

一套目前来说最好的nestjs实战教程

包含以下知识点


- 掌握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组织代码

常见问题
问:没有typescript基础,学这么课会不会很难
答:一般只要会JS,直接上手基本没问题
展开更多
发布
头像

{{ item.user.nick_name }} {{ EROLE_NAME[item.user.identity] }}

置顶笔记
讨论图
{{ item.create_time }}回复
  • 删除

    是否确认删除?

    确认
    取消
  • {{ item.is_top == 1 ? '取消置顶' : '置顶'}}

    已有置顶的讨论,是否替换已有的置顶?

    确认
    取消
{{ tag.text}}
头像
{{ subitem.user.nick_name }}{{ EROLE_NAME[subitem.user.identity] }}
{{ subitem.create_time }}回复
删除

是否确认删除?

确认
取消
发布
{{pageType === 'video' ? '讨论区抢占沙发,可获得双倍学分' :'讨论区空空如也,你来讲两句~'}}
发布
{{tips.text}}
{{ noteHeaderTitle }} 笔记{{ hasMyNote ? '我的笔记' : '记笔记' }}
{{ hasMyNote ? '我的笔记' : '记笔记' }}
优质笔记
更新于:{{ $dayjs.formate('YYYY-MM-DD HH:mm:ss', item.last_uptime*1000) }}
头像
{{ detail.username }}

公开笔记对他人可见,有机会被管理员评为“优质笔记”

{{ noteEditor.content.length }}/2000

公开笔记
保存
提问

讲师收到你的提问会尽快为你解答。若选择公开提问,可以获得更多学员的帮助。

记录时间点
记录提问时视频播放的时间点,便于后续查看
公开提问
提交