Appearance
Node.js工程化实践: 从开发到生产
构建专业的 Node.js 开发体系,实现持续集成与高质量交付。
第一部分:TypeScript 工程化
- TypeScript 与 Node.js 概述
- tsconfig.json 配置详解
- 模块系统选择:CommonJS vs ESM
- 路径别名与模块解析
- 类型声明文件与 @types
- Node.js 类型实践技巧
- 编译策略与构建工具
- tsx 与开发时编译
- TypeScript 严格模式最佳实践
第二部分:代码质量保障
- 代码规范的价值与实施
- ESLint 配置详解
- Prettier 代码格式化
- ESLint 与 Prettier 协作
- 自定义 ESLint 规则
- Git Hooks 与 Husky
- lint-staged 增量检查
- Commitlint 提交规范
- 代码审查最佳实践
第三部分:测试体系建设
- Node.js 测试策略概览
- Vitest 入门与配置
- Jest 入门与配置
- 单元测试编写技巧
- 异步代码测试
- Mock 与 Stub 详解
- 数据库测试策略
- HTTP 接口测试:Supertest
- 集成测试设计
- E2E 测试入门
- 测试覆盖率与质量门禁
- 测试驱动开发(TDD)实践
- 快照测试
- 性能测试与基准测试
第四部分:CI/CD 实践
- CI/CD 概念与价值
- GitHub Actions 入门
- 工作流语法详解
- Node.js 项目 CI 配置
- 矩阵构建与多版本测试
- 缓存优化构建速度
- 密钥与环境变量管理
- 自动化发布到 npm
- 自动化版本管理:semantic-release
- Docker 镜像构建与推送
- 自动化部署流程
- 质量门禁与强制检查
第五部分:容器化与部署
- Docker 基础回顾
- Node.js Dockerfile 最佳实践
- 多阶段构建优化镜像
- Docker Compose 本地开发
- PM2 进程管理详解
- PM2 集群模式与负载均衡
- 优雅启停与零停机部署
- 传统服务器部署指南
- 云平台部署:AWS、GCP、Azure
- Serverless 部署入门
- Kubernetes 入门与实践
第六部分:日志与监控
- 日志设计原则
- console 的局限性
- Winston 日志框架
- Pino 高性能日志
- 结构化日志与 JSON
- 日志级别与分类策略
- 请求追踪与关联 ID
- 日志聚合与分析
- 健康检查端点设计
- 指标收集与 Prometheus
- APM 接入:New Relic、Datadog
- 告警设计与实现
- 生产环境问题诊断
第七部分:配置与环境管理
第八部分:项目组织与协作
- 项目目录结构规范
- Monorepo 概念与选型
- Turborepo 实战
- Nx 工作区管理
- pnpm Workspace
- 共享代码与内部包
- 版本管理策略
- CHANGELOG 自动生成
- 发布流程规范
- 团队协作规范
- 工程化总结与检查清单