全栈应用工程与 API 基础
会写出一个页面或接口,只代表程序暂时能够运行。真实项目还需要回答更多问题:需求是否明确、接口是否稳定、错误能否定位、修改会不会破坏旧功能、上线失败能否恢复。
这本小册面向完全零基础的技术新人,用一个持续演进的“TaskBoard 任务清单”项目,把应用工程和 API 架构中最通用的知识串起来。课程不要求背诵架构名词,也不讨论大型互联网系统;每学一个概念,都要在项目中完成一次操作并留下可检查的成果。
最终作品
完成课程后,你将拥有一个部署在 Cloudflare 上的 TaskBoard:
- 一个可以新增、查看、修改和完成任务的网页;
- 一组有统一输入、输出和错误格式的 HTTP API;
- 一个保存任务数据的 D1 数据库;
- 基础身份校验、日志、健康检查、限流和缓存;
- 单元测试、接口测试、端到端测试和 GitHub Actions;
- API 文档、发布记录、回滚方案和项目复盘。
实践技术栈
- JavaScript:只使用变量、函数、对象、数组和异步请求等基础语法;
- Cloudflare Workers:运行 API,不需要自行维护服务器;
- Cloudflare D1:保存任务数据;
- HTML、CSS 和浏览器 Fetch:制作最小操作页面;
- Vitest、Playwright:验证函数、接口和用户流程;
- GitHub Actions:在每次提交后自动检查项目。
可以使用 Codex 或其他 AI 编程工具协助写代码,但必须亲自运行命令、查看差异、执行验证,并解释截图中的结果。
一级菜单
| 部分 | 解决的问题 | 阶段成果 |
|---|---|---|
| 第1部分 从想法到可验收任务 | 要做什么,怎样才算完成 | 项目说明、用户故事、验收清单 |
| 第2部分 看懂 HTTP 并设计 API | 前端和后端怎样沟通 | 可调用的任务 CRUD API |
| 第3部分 组织可维护的应用 | 代码多起来后怎样不混乱 | 分层目录、配置与模块边界 |
| 第4部分 管理数据与用户权限 | 怎样正确保存和修改数据 | D1、迁移、并发控制、权限 |
| 第5部分 连接外部服务与异步任务 | 系统之间怎样协作 | 第三方调用、Webhook、定时任务 |
| 第6部分 用测试保证功能 | 怎样证明修改没有破坏项目 | 单元、接口、端到端测试 |
| 第7部分 让线上应用更可靠 | 出错后怎样发现、定位和保护 | 日志、监控、缓存、限流、安全 |
| 第8部分 持续交付与项目毕业 | 怎样稳定发布和继续演进 | CI、环境、发布、回滚、毕业演示 |
每章完成规则
每一章都包含一个可以单独审批的任务。任务只有同时满足以下条件才算完成:
- 按步骤完成代码、配置或文档操作;
- 运行本章给出的验证命令或浏览器操作;
- 保存指定文件,不把密钥提交到 Git;
- 上传能够看清关键结果的截图;
- 用两三句话记录做了什么、结果是什么、遇到了什么问题。
截图不是为了证明“敲过命令”,而是为了证明成果满足验收标准。终端截图要同时包含执行命令和结果;网页截图要包含地址栏与关键界面;云控制台截图必须遮盖账号、令牌和其他敏感信息。
开始前准备
- 完成“计算机基础”中的命令行、Git、环境变量和网络请求章节;
- 安装 Node.js 20 或更高版本、Git 和 VS Code;
- 准备 GitHub 与 Cloudflare 免费账号;
- 新建一个专门用于课程的空目录,不在重要文件目录中直接实验。
不熟悉 JavaScript 也可以开始。遇到代码时先运行、观察输入输出,再理解其中用到的基础语法。