此视频完全免费,视频观看地址:www.bilibili.com/video/BV1jJ…
1、Nest.js介绍:
Nest.js是一个渐进的Node.js框架,可以在TypeScript和JavaScript (ES6、ES7、ES8)之上构建高效、可伸缩的企业级服务器端应用程序。它的核心思想是提供了一个层与层直接的耦合度极小、抽象化极高的一个架构体系。Nest.js目前在行业内具有很高的关注度,所以我们有必要学习一下。
Nest.js基于TypeScript 编写并且结合了 OOP(面向对象编程),FP(函数式编程)和 FRP(函数式响应编程)的相关理念。在设计上的很多灵感来自于 Angular,Angular 的很多模式又来自于 Java 中的 Spring 框架,依赖注入、面向切面编程等,所以我们也可以认为: Nest.js是 Node.js 版的 Spring 框架。
Nest框架底层 HTTP平台默认是基于 Express 实现的,所以无需担心第三方库的缺失,Nest 旨在成为一个与平台无关的框架。 通过平台,可以创建可重用的逻辑部件,开发人员可以利用这些部件来跨越多种不同类型的应用程序。 从技术上讲,Nest 可以在创建适配器后使用任何 Node HTTP 框架。 有两个支持开箱即用的 HTTP 平台:express 和 fastify。 您可以选择最适合您需求的产品。
2023年3月13日统计NestJs目前周下载量已经达到200多万了,趋势还在继续上涨,可以看到目前使用NestJs的童鞋还是挺多。
2、NestJs的核心思想:
就是提供了一个层与层直接的耦合度极小,抽象化极高的一个架构体系。 Nestjs目前在行业内具有很高的关注度,所以我们有必要学习一下。
官网:nestjs.com/
中文网站:docs.nestjs.cn/
GitHub: github.com/nestjs/nest
3、NestJS和Egg.js的一些简单对比:
1、Egg.js是和Nest.js 都是为企业级框架和应用而生。
2、 Egg.js和Nest.js都是非常优秀的Nodejs框架。Egg.js基于Koa,Nest.js默认基于Express,nest也可以基于其他框架。
3、 Egg.js文档相比Nestjs优秀很多。
4、 Express、Koa 是 Node.js 社区广泛使用的框架,简单且扩展性强,非常适合做个人项目。但框架本身缺少约定,标准的 MVC 模型会有各种千奇百怪的写法。Egg 和Nestjs都是按照约定进行开发的。但是Egg相比Nestjs约定更标准。
5、 面向对象方面Nestjs优于Egg.js,Nestjs基于TypeScript, 如果你会angular或者java学习Nestjs非常容易。
Egg.js的特性:
提供基于 Egg 定制上层框架的能力
高度可扩展的插件机制
内置多进程管理
基于 Koa 开发,性能优异
框架稳定,测试覆盖率高
渐进式开发
Nestjs的特性:
依赖注入容器
模块化封装
可测试性
内置支持 TypeScript
可基于Express或者fastify
4、学习NestJS必备基础:
Nest.js 受到了 Angular 的启发,甚至很多装饰器命名也完全一样,基本上可以无缝切换前后端。会java或者larave或者Angualr的话学习Nest会非常容易。
必备基础:在学习Nestjs之前我们必须要有Nodejs、Typescript、Express、Mongodb基础。 Nodejs+Mongodb+Express基础(免费):www.itying.com/goods-800.h…
Typescript入门实战教程(免费):www.itying.com/goods-905.h…
5、NestJS环境搭建 、创建运行NestJS项目
1、电脑上面必须安装nodejs环境,推荐安装nodejs最新稳定版本
2、安装 Nest CLI以及使用 Nest CLI创建项目
安装 Nest CLI:
npm i -g @nestjs/cli 或者 cnpm i -g @nestjs/cli 或者 yarn global add @nestjs/cli
使用Nest CLI创建项目:
nest new nestdemo
运行刚创建项目:
Nestjs目录结构介绍以及执行流程: