近年来,前後端都可以看到 JavaScript 的踪影,Node.js 的诞生让 JavaScript 变得非常热门,在 Node.js 生态圈中,主流的後端框架不外乎就是 Express 与 Koa,这些框架非常 自由 且 轻量,能够快速建立应用,因此非常受欢迎。
由於这些框架非常自由,所以 没有严谨的架构规范,非常容易写出 高耦合、低内聚 的程序码,甚至 档案结构非常松散,使用这些主流框架的开发者如果没有订定一套规范,将会面临许多挑战。
後来出现了一套名为 NestJS 的框架,它受到前端框架 Angular 的启发,运用大量的 设计模式 与 架构规范,再搭配强型别的 TypeScript,提供开发人员 严谨、易扩展、松耦合 的开发环境。
NestJS 采用模组化设计,将每种功能打包成独立模组,且设计许多抽象层来将各个不同职责的程序码片段抽成 各式元件,具有高度的解耦合与扩展性。NestJS 可以选择使用 Express 或 Fastify 作为底层基础,来打造 MVC 或 REST API 的应用,并将各种热门套件进行整合,如:TypeORM、mongoose、passport 等,甚至还可以实作时下非常流行的微服务 (Microservice),可说是一套整合度很高的框架。
NestJS 结合了三种程序设计的概念:
从这些概念中提取精华,再搭配设计模式,使 NestJS 的整体架构十分清晰且严谨。
以往 Node.js 作为後端应用最被诟病的不外乎就是 型别问题 与 架构问题,NestJS 正是解决这两大问题的最佳选择,然而在台湾 NestJS 的热度相对来说并没有那麽高且繁体中文的教学也是相对稀少的,为了促进 NestJS 在台湾的发展,我决定写这个系列文来推坑各位这款强大的 Node.js 後端框架,事实上,我在去年的系列文就已经埋下了今年系列文的伏笔。本系列文会以 REST API 的方向来撰写,具体规划如下:
另外,在文章中可能会有一些规则需要先了解:
<大写英文>
当作占位,读者们自行输入欲命名之名称。另外,所有的指令开头都会有一个 $
表示这是指令,无须输入该符号。建议读者们至少要具备以下条件,会比较容易理解接下来的内容:
提醒:Node.js 也可以使用 nvm 进行安装。
>>: Day14-seaborn(2)直方图histplot、散布图jointplot
在 OpenTelemetry 中有提到 trace 的概念。而 Trace 由多个 Span 组成...
这段时间由於公司稍微忙一点,所以我就先把脑内的存稿一一先放出来, 软件的实作过程等有空档我再慢慢边重...
今天是30天程序语言研究的第十四天,由於深度学习老师多让我们上了python的进阶课程里面包括之前没...
前言 今天要来继续介绍 NumPy 的应用,包括了 Slicing 索引,Copy, View 复制...
我们今天终於要进入主题了, 这一系列的文章主要是针对已经有Laravel底子的人, 如果还没有写过或...