DEV
← 返回笔记 | 2026-05-27
项目复盘

成绩分析系统:从实习项目到学校环境落地

5 min read

成绩分析系统是我在学校实习期间开发的项目。它不是为了展示技术栈而写的 demo,而是围绕真实使用场景做出来的工具。

项目要解决的问题很具体:老师导入 Excel 成绩表后,系统能按班级、学科、考试和学生维度做统计,生成图表和可导出的分析结果。后续又加入了学生追踪、成绩详情、归档、权限和多轮导入适配。

项目结构

这个项目经历过原型和正式工程两个阶段。

原型阶段先验证导入、分析、追踪和导出这些主链路。正式工程则把入口、登录、数据库、部署脚本、迁移脚本、备份恢复和服务器运行方式补起来。

从项目目录看,它已经不是单纯的页面项目。它包含正式应用、部署配置、数据库初始化、迁移、备份恢复、服务器检查脚本和大量运行文档。这个阶段我开始同时经营代码、数据、部署和工作流。

部署事实

个人服务器版本中,vm5-japan 承载的是 Node.js 应用服务,数据库使用 Azure MySQL 托管。也就是说,数据库没有直接压在 2C1G 云服务器上。

项目还为学校正式环境做过部署计划。计划层面考虑过应用服务器和数据库服务器分离。现场落地时,又根据学校服务器条件调整过一体部署方案,先在现场机器上跑通应用和 MySQL,再围绕服务启动、健康检查、代码同步和差异对比继续迭代。

这段经历让我对“部署”有了更实际的理解。方案可以设计得很理想,但现场环境会改变实现路径。重要的是保留可回退、可检查、可同步的记录,而不是只追求第一次部署成功。

工作流痕迹

成绩分析系统也是我工作流变化最明显的项目。

在这里,我开始系统接触 skill、MCP、Superpowers、GSD、gstack、多代理调度和搜索增强。项目里留下了大量 spec、plan、部署 runbook、同步记录和差异检查文档。

这个项目让我意识到,vibecoding 不只是让 AI 写代码。真正复杂的部分,是让 AI 在不断变化的项目里保持边界、理解上下文、持续修改、持续验证,并且不破坏已经能跑的部分。

参考材料来自项目 README、CHANGELOG、服务器部署 runbook、学校环境部署清单、现场部署记录和本地与服务器差异检查记录。公开页面只保留脱敏后的项目事实。