# Node.js 12.x 全栈之路一:走进事件驱动的异步世界

如果你曾好奇 JavaScript 为何能从浏览器走向服务器,或者 Node.js 为何在高并发场景下表现卓越,这门课程便是你的起点。Node.js 是基于 Chrome V8 引擎的 JavaScript 运行环境,它让开发者能用同一种语言驾驭前后端,这也是"全栈"最直观的含义。本课程以 Node.js 12.x 为核心,带你从零搭建后端开发的认知体系。

学习门槛与前置要求

本课程适合有一定 JavaScript 基础的学习者。你不需要精通异步编程,但应熟悉变量、函数、对象等基本概念。若你从未写过任何服务端代码,也不用担心,课程会从安装与环境配置讲起,循序渐进地引导你入门。

核心内容概览

课程前四讲系统讲解 Node.js 的核心思想:为什么它是单线程的、如何依靠事件循环实现非阻塞 I/O、事件驱动模型怎样让代码感知每一个操作的完成。这些概念是后续一切进阶的基础,理解了它们,你才能真正读懂 Node.js 的性能设计哲学。

接下来的模块化与包管理章节,将从 `require` 到 `module.exports`,从全局对象 `global` 到依赖安装,再到 NPM 镜像的配置与包的搜索流程。这部分内容直接决定你后续能否高效使用第三方库、构建自己的工具链,是工程化能力的基石。

Buffer 缓冲区与文件系统章节则带你深入底层。从同步写入到异步写入,从简单文件读写到流式处理,你将掌握操作磁盘、处理大文件的能力。这是构建文件上传服务、日志系统、数据处理管道的前提技能。

学习顺序建议

建议严格按课程顺序学习,不要跳过"进程与线程""单线程"等看似理论的内容——它们决定了你遇到性能瓶颈时能否做出正确判断。每一讲的案例代码请动手复现,NPM 部分务必亲自配置镜像并安装几个常用包,文件系统部分的 Buffer 操作建议结合真实文件反复练习。

学完产出

完成本课程后,你将具备以下能力:独立搭建 Node.js 开发环境;理解单线程与非阻塞 I/O 的工作原理;熟练运用模块系统组织代码;使用 NPM 管理项目依赖;对文件和二进制数据进行处理。这些能力是通往 Express、数据库、前后端分离项目的必经之路。

课程配套资料仅用于辅助理解主题,请勿照抄文件名。建议边看视频边敲代码,将每个案例在自己的编辑器中跑通,只有亲手实践,才能真正内化这些概念。

课程目录

课程目录30 集
  • 1-1 [Node简介] Node.js是什么 (29:24).mp4
  • 2-1 [安装与使用] Node的安装 (05:12).mp4
  • 2-2 [安装与使用] 环境变量Path (27:04).mp4
  • 2-3 [安装与使用] 基本案例一 (12:58).mp4
  • 2-4 [安装与使用] 基本案例二 (17:53).mp4
  • 2-5 [安装与使用] 基本案例三 (24:49).mp4
  • 3-1 [Node的特点] 进程和线程 (12:50).mp4
  • 3-2 [Node的特点] 单线程 (27:57).mp4
  • 3-3 [Node的特点] 非阻塞IO模型 (34:41).mp4
  • 3-4 [Node的特点] 非阻塞IO模型(续) (12:04).mp4
  • 3-5 [Node的特点] 事件驱动 (17:49).mp4
  • 4-1 [模块系统] 代码的模块化 (20:24).mp4
  • 4-2 [模块系统] 模块的定义与使用 (26:50).mp4
  • 4-3 [模块系统] 全局对象global (21:23).mp4
  • 4-4 [模块系统] 模块中的参数 (24:00).mp4
  • 4-5 [模块系统] 模块的导出 (16:05).mp4
  • 5-1 [NPM包管理工具] 包 (20:02).mp4
  • 5-2 [NPM包管理工具] 包的描述文件 (26:58).mp4
  • 5-3 [NPM包管理工具] npm命令 (34:29).mp4
  • 5-4 [NPM包管理工具] 设置镜像 (21:46).mp4
  • 5-5 [NPM包管理工具] node搜索包的流程 (15:12).mp4
  • 6-1 [二进制数据处理] Buffer缓冲区 (37:40).mp4
  • 6-2 [二进制数据处理] Buffer缓冲区(续) (35:49).mp4
  • 7-1 [文件系统] 同步文件写入 (27:08).mp4
  • 7-2 [文件系统] 异步文件写入 (24:06).mp4
  • 7-3 [文件系统] 简单文件写入 (16:13).mp4
  • 7-4 [文件系统] 流式文件写入 (25:03).mp4
  • 7-5 [文件系统] 简单文件读取 (27:42).mp4
  • 7-6 [文件系统] 流式文件读取 (30:55).mp4
  • 7-7 [文件系统] 流式文件读取(续) (04:45).mp4