后端入门概览
本目录覆盖 JavaScript/TypeScript 服务端运行时与框架、配套的数据存储,以及 Rust 系统编程入门。前置建议:JavaScript 基础、工程化 · 环境变量。
学习路径
按照「运行时选型 → Node 基础 → 内置模块 → Web 框架 → 企业级框架 → 数据存储 → 替代运行时 → 系统语言」的顺序推进,每一阶段都建立在前一阶段之上:
| 阶段 | 目标 | 文档 |
|---|---|---|
| 1. 运行时选型 | 了解 Node / Deno / Bun 的定位差异,明确默认选择 | Bun / Deno / Node 对比 |
| 2. Node 基础 | 掌握全局对象、事件循环、模块系统三大基石 | 全局对象 → 事件循环 → 模块 |
| 3. Node 内置模块 | 文件系统、HTTP 服务、流式处理,是框架底层原理的基础 | fs、http、stream |
| 4. 轻量 Web 框架 | 用最小依赖跑通路由、中间件、模板渲染 | Express → EJS |
| 5. 企业级框架 | 学习依赖注入、模块化架构,面向中大型项目 | NestJS 基础 |
| 6. 数据存储 | 后端离不开持久化与缓存,配合 数据存储导读 深入学习 | MySQL 基础 → Redis 入门:概念、安装与数据类型 |
| 7. 替代运行时 | 对比 Node 生态外的两个新兴选项,各有取舍 | Deno 基础、Bun 基础与核心命令 |
| 8. 系统语言 | 当性能或内存安全成为瓶颈时的进阶选项 | Rust 基础 |
阶段详解
- 运行时选型先行:三者 API 差异不小(如 Deno 默认沙箱权限、Bun 内置打包器),提前了解可以避免在后续学习具体框架时被运行时差异干扰理解。
- Node 基础与内置模块是地基:即使最终使用 NestJS 等框架,理解事件循环和
http/stream模块的原理,才能真正读懂框架的中间件机制和性能瓶颈。 - 由轻到重学框架:先用 Express 理解「路由 + 中间件」这一后端框架的通用心智模型,再学习 NestJS 时会发现它本质是对同一模型加了一层结构化约束(模块、控制器、提供者)。
- 数据存储与框架并行推进:建议在学习 NestJS 数据库集成(如 NestJS 数据库)之前,先补齐 MySQL 的基础操作与 Redis 入门 的缓存思路,二者结合可以覆盖「持久化存储 + 高速缓存」这一常见后端组合。
- 替代运行时按需学习:Deno、Bun 并非必学项,若团队栈已明确使用 Node,可以先跳过,等有迁移或新项目需求时再回顾。
- Rust 作为进阶方向:不是后端入门的必经之路,但当 Node.js 性能或内存安全成为瓶颈(如 CPU 密集型计算、边缘计算网关)时值得投入学习。
技术选型简表
| 需求 | 建议 |
|---|---|
| 默认生产后端、生态最全 | Node.js + LTS 版本 |
| 新项目、规范架构、TypeScript | NestJS(基于 Node) |
| 轻量 HTTP、原型 | Express |
| 权限沙箱、TS 零配置 | Deno |
| 追求一体化工具链、Node 兼容迁移 | Bun(按官方兼容列表验证依赖) |
| 结构化业务数据、事务 | MySQL |
| 缓存、会话、排行榜、轻量队列 | Redis(见 Redis 入门) |
| 高性能/内存安全原生服务 | Rust(学习曲线较高) |
参考文献
以下链接在编写时均可正常访问:
| 资料 | 说明 |
|---|---|
| Node.js 文档 | 官方 API |
| NestJS 文档 | 英文官方 |
| Express 文档 | 官方 |
| Deno 手册 | 官方 |
| Bun 文档 | 官方 |
| Rust 程序设计语言 | 官方书 |
| MySQL 8.0 手册 | 官方 |
| Redis 文档 | 官方 |
相关文章
Bun 基础与核心命令
Bun 是用 Zig 编写的 JavaScript 运行时,内置包管理(bun install)、打包(bun build)、测试(bun test)等,并持续兼容 Node.js API。本文介绍核心特点、安装方式,以及日常最常用的命令与包管理功能。见 运行时对比。
HTTP 服务器
Bun 内置了高性能的 HTTP 服务器,通过 Bun.serve 可以轻松启动服务。从 Bun v1.2.3 开始,推荐使用 routes 对象来定义路由,更加直观和灵活。
文件系统
Node.js 的 fs 模块提供了与文件系统交互的 API,几乎涵盖了所有标准文件操作。它支持三种风格的 API:同步、回调式异步 和 Promise 式异步。下面详细介绍这些 API 的选择策略、流式读写、文件监视以及常用操作。
异常处理器
第八章:测试、文档与质量
Rust 将测试和文档视为语言的一等公民。通过内置的测试框架,你可以在项目里编写单元测试、集成测试以及随文档一起运行的示例测试,三者共用 cargo test 命令。配合 cargo doc 生成文档,形成了一套确保代码质量与可维护性…
认证与授权
认证(Authentication):确认「你是谁」(如 JWT、Session)。 - 授权(Authorization):确认「你能做什么」(如 RBAC、策略检查)。
Series
end
9 / 69