JamesBonddu / nestjs-book

NestJS从 入门到实战

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NestJS-book

《NestJS 从入门到实战》

目标:国内第一本系统阐述 NestJS 从入门、使用、技巧、原理及实战案例的书籍

目的:系统总结和思考在 NodeJS(NestJS)上的使用经验、反哺业务支撑能力、构建并扩大个人技术影响力

大致分如下章节,页数和字数参考其它技术书籍进行预估,谋划全书约 16 ~ 20 章, 500 ~ 600 页,总字数约 70 ~ 90 万字,写作周期约 6 ~ 12 个月。

此计划暂时命名为大雪满弓刀行动,取自大唐名将李靖、李勣、苏定方的灭东突厥之战。

月黑雁飞高,单于夜遁逃。 欲将轻骑逐,大雪满弓刀。

  1. NestJS 介绍,介绍 NestJS 的特点基于其它主流 HTTP 框架的比较

  2. 核心概念及使用,包括:控制器、供应商(自定义、同步、异步供应商)、模块(动态模块、全局模块、懒加载模块)、中间件、异常处理器、管道、守卫、拦截器、自定义装饰器等

  3. 如何接入数据库(MySQL、PostgreSQL、MongoDB)、ORM(TypeORM、Prisma、Mongoose、Typegoose) 的介绍和使用,类型安全、包括连接配置项解释、如何定义单表及建立表关联关系、单表和关联表及其选项(cascade、eager 等)的增删改查、日志、最佳实践等

  4. 安全及授权,如何使用 JWT、如何接入其它授权体系

  5. RESTful API 和完整的 Swagger 配置及生成、基于代码自动生成的接口文档、基于 swagger-json 的 typescript 类型声明文件生成

  6. 单演示案例:请求校验、静态文件服务、上传、下载、定时任务、缓存、MVC、如何集成 NextJS

  7. GraphQL

  8. 缓存进阶,基于 Redis 的高级缓存处理

  9. 微服务,微服务的定义及在 NestJS 中基本使用、使用场景、gRPC 的使用,如何接入其它协议,如 NATS、MQTT,如何使用消息队列,如何使用消息队列,如 RabbitMQ 和 kafka

  10. websocket,实时消息推送的案例

  11. 测试,如何进行单元测试和接口测试

  12. NestJS 中常用包的介绍和使用:lodash、class-validator、class-transformer、RxJS 等

  13. 深入理解 NestJS(注射范围、生命周期、测试、平台无关、执行上下文)

  14. NestJS 核心原理及源码解析,系统介绍 JS(TS)中的依赖注入(DI)与控制反转(IoC)原理及其基本实现、面向对象、编程模式(切面、函数式)、主要使用的设计模式、源码结构及概要解析

  15. 实战案例 1:全栈管理平台,强大的基于可灵活配置和可视化操作,并内置大量常用组件的管理平台

  16. 实战案例 2:一站式前端基础能力平台、多种资源(网站、工具、gist、news 等)的聚合、playground、交流(点赞、收藏、悬赏与贡献等)、团队技术博客沉淀,长期维护

常用 Git 命令

  • git pull --allow-unrelated-histories origin main 首次 pull
  • git push --set-upstream origin main 首次 push

About

NestJS从 入门到实战

License:MIT License


Languages

Language:TypeScript 94.5%Language:JavaScript 4.4%Language:HTML 0.9%Language:Shell 0.2%