介绍
Nest(NestJS)是一个用于构建高效、可扩展的Node.js服务器端应用程序的框架。它采用渐进式JavaScript,使用并完全支持TypeScript(同时仍然允许开发人员使用纯JavaScript编码),并结合了面向对象编程(OOP)、函数式编程(FP)和函数式响应式编程(FRP)的元素。
Nest 在这些常见的 Node.js 框架(Express/Fastify)之上提供了一层抽象,但也直接向开发人员公开了它们的 API。这使开发人员可以自由使用为底层平台提供的众多第三方模块。
哲学#
近年来,由于Node.js的出现,JavaScript已成为Web前端和后端应用的“通用语言”。这导致了诸如Angular、React和Vue等出色项目的涌现,这些项目提高了开发者的生产力,使得前端应用能够快速、可测试和可扩展。然而,尽管Node(以及服务器端JavaScript)存在大量出色的库、辅助工具和工具,但它们都未能有效解决主要问题——架构。
Nest 提供了开箱即用的应用程序架构,允许开发人员和团队创建高度可测试、可扩展、松耦合和易于维护的应用程序。该架构受 Angular 的启发而设计。