LEARNING PATH / 从语言基础开始
先把 JavaScript 学明白,
再走进真实后端。
面向有少量编程基础、还没学过 JavaScript 的同学。先独立学习 JavaScript,再学习 TypeScript;准备好后,才用 Node.js 与 Express 写小接口,最后阅读 NestJS 与 Leverage OJ 源码。
23 节课程05 个学习阶段02 个本机后端示例
01// 从小程序开始
02const name = '你好';
03console.log(name);
04// 输出:你好
认识值与变量JavaScript
写出函数与对象JavaScript
给代码加上类型TypeScript
YOUR JOURNEY
学习路径
先学语言,再读项目;每课只引入少量新概念。
JavaScript 基础
先学会写与读 JavaScript,不需要了解后端或项目代码。
TypeScript 基础
在熟悉 JavaScript 后,学习类型如何帮助我们写代码。
HTTP 与 Express
先写一个与项目无关的 HTTP 小接口,建立后端处理请求的基本概念。
NestJS 后端开发
从可运行应用开始,学模块、服务、数据校验、数据库、权限与测试。
10从类和模块开始写第一个 Nest 应用先读懂类、方法、构造函数和模块导入,再启动一个真实 NestJS 服务。11Provider 与依赖注入:让控制器调用服务Nest 如何登记、创建并复用服务,并用构造函数把它交给控制器。12Nest 请求流程与 Express 路由对照读取路径参数、查询和 DTO 请求正文,并准确追踪请求进入与返回的各个阶段。13NestJS 数据校验与错误响应用 DTO 和 ValidationPipe 检查请求数据,再用异常过滤器与 HTTP 状态码说明失败原因。14NestJS 数据层、异步读写与事务从 Entity 和 Repository 追踪数据如何进入数据库,理解异步操作、事务与迁移的职责。15NestJS 身份认证与资源权限区分“你是谁”和“你能访问什么”,认识密码哈希、JWT、Guard 与私有提交的访问边界。16NestJS 配置、日志与测试管理环境配置的加载与校验,用日志诊断问题,并通过单元、集成和端到端测试反馈失败。
OJ 评测系统
沿公开源码逐步学习评测队列、判题、资源限制、沙箱和结果结算。
17一次提交如何变成可查询状态从创建提交 API 追踪数据库记录、代码附属数据和评测状态,区分接收请求与得到判题结果。18从 Bull 队列追到评测 Worker看提交如何从数据库进入 Bull 队列,再由 Worker 与内部评测服务领取并执行,理解重试和旧尝试保护。19测试数据怎样变成判题结果追踪固定版本中的用例文件读取、stdin/stdout 执行、输出比较和终态映射,不把未实现的能力当成事实。20编译、运行与资源限制追踪提交代码如何变成可运行程序,并区分限制配置和评测时实际观测到的资源数据。21沙箱隔离与安全边界从容器创建参数理解不可信用户代码的隔离措施,以及 Docker 仍留下的风险。22结果结算与重新评测追踪评测结果如何在 SQL 事务中落库、避免重复统计,并在重判后修复排名。23评测排错与验证任务根据状态、日志和证据区分 CE、SE 与卡住的提交,并完成一项不触碰生产服务的测试改动。