🌱 阶段 1 · Node.js 核心
Day 15
🎯 阶段一总结与测验
📋 今日目标
- 回顾 Day 1-14 的核心知识点
- 完成三个限时编码挑战
- 自我评估知识掌握情况
- 制作阶段一思维导图/学习笔记
📖 知识体系回顾
阶段一知识地图
Node.js 核心基础
├── 运行时环境
│ ├── Node.js vs 浏览器 JS
│ ├── process 全局对象
│ └── 全局对象与模块作用域
│
├── 模块系统
│ ├── CommonJS(require/module.exports)
│ ├── ESModule(import/export)
│ └── 模块解析算法
│
├── 核心模块
│ ├── fs/promises — 文件系统
│ ├── path — 路径处理
│ ├── os — 系统信息
│ ├── events — EventEmitter
│ ├── stream — 流式处理
│ └── buffer — 二进制数据
│
├── 事件循环
│ ├── 六个阶段
│ ├── nextTick vs setImmediate
│ ├── 微任务与宏任务
│ └── libuv 与 I/O 多路复用
│
├── 异步编程
│ ├── Callback → Promise → async/await
│ ├── Promise 并发方法(all/allSettled/race/any)
│ ├── 并发限制(asyncPool)
│ └── 常见陷阱(forEach+async、未捕获 rejection)
│
├── HTTP 与 API
│ ├── HTTP 方法语义与幂等性
│ ├── 状态码精确使用
│ ├── CORS 完整机制
│ ├── RESTful API 设计规范
│ └── 原生 Node.js HTTP 服务器
│
├── 代码架构
│ ├── 中间件模式
│ ├── 路由匹配
│ ├── 请求验证
│ └── 错误处理体系
│
├── TypeScript
│ ├── tsconfig.json 服务端配置
│ ├── 接口与类型定义
│ ├── 类型守卫
│ └── 泛型
│
└── 进程与调试
├── child_process
├── worker_threads
├── cluster 模式
├── 全局错误捕获
└── 调试工具
💻 限时编码挑战
挑战 1:HTTP 文件服务器(30 分钟)
用原生 Node.js 实现一个文件浏览和下载服务器:
- 访问目录时显示文件列表(HTML 页面)
- 点击文件名可以下载
- 正确的 Content-Type
- 支持子目录浏览
挑战 2:并发爬虫(30 分钟)
编写一个简易爬虫,给定一组 URL:
- 并发抓取(最大并发数 5)
- 提取每个页面的
<title> - 支持超时(10 秒)
- 统计成功/失败数量
- 将结果保存为 JSON 文件
挑战 3:实时日志监控(20 分钟)
实现一个实时日志监控工具:
- 监控指定的日志文件
- 新增的行实时输出到终端
- 高亮 ERROR 级别的日志(红色)
- 统计各级别日志数量
📝 自我评估
对以下每个知识点,用 1-5 分评估掌握程度:
| 知识点 | 评分 (1-5) | 备注 |
|---|---|---|
| 模块系统(CJS/ESM) | ||
| 文件系统操作 | ||
| 事件循环六阶段 | ||
| Stream 流式处理 | ||
| async/await 与并发控制 | ||
| HTTP 协议与状态码 | ||
| 中间件模式 | ||
| RESTful API 设计 | ||
| TypeScript 类型系统 | ||
| 错误处理与调试 |
评分 < 3 的项目,建议回去复习对应的 Day。
✅ 今日产出
- 完成三个限时编码挑战
- 完成自我评估表
- 制作阶段一思维导图/学习笔记
- 将薄弱项标记,在后续学习中重点关注
🎉 阶段一完成!
恭喜你完成了 Node.js 核心基础阶段!你现在应该能够:
- ✅ 深入理解 Node.js 的运行时原理
- ✅ 从零构建 HTTP 服务器和 REST API
- ✅ 用 TypeScript 编写类型安全的服务端代码
- ✅ 正确处理异步编程和错误
接下来进入阶段二,你将学习 NestJS 企业级框架和 PostgreSQL 数据库,开始构建真正的后端应用。
本文内容来自 源仓库 day-15/README.md