final-vibevault-template/REPORT_GUIDE.md
sit002 5abb6a47e8 docs: separate guide files from student submission files
- REPORT_GUIDE.md and FRONTEND_GUIDE.md: writing instructions
- REPORT.md and FRONTEND.md: empty files for student submissions
- Update README.md to reference guide files
2025-12-01 23:42:13 +08:00

47 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# VibeVault 期末大作业报告:后端与系统设计
> 请使用中文完成报告,建议 15003000 字。你可以使用任意 Markdown 编辑工具。
## 1. 系统概览与架构设计
- 简要描述你的系统功能(例如:歌单管理、歌曲管理、用户管理等)。
- 画出或文字说明你的分层结构Controller / Service / Repository并说明每一层的主要职责。
- 解释你如何在代码中体现"高内聚、低耦合"和"依赖倒置"。
## 2. 数据建模与持久化
- 描述你的核心实体(如 `User`, `Playlist`, `Song`)及它们之间的关系(如 One-to-Many, Many-to-One
- 解释你选择的主键策略(如 `@GeneratedValue`)和约束(如唯一性、非空约束)的设计理由。
- 如果你对数据库结构做了扩展或修改,请在此详细说明。
## 3. 业务逻辑与事务
- 选择 12 个你认为最关键的业务用例(例如"批量向歌单添加歌曲并保持原子性"),描述其业务流程。
- 说明你在这些用例中如何使用事务(如 `@Transactional`),以及这样设计的原因。
- 如果你实现了高级查询(如模糊搜索、复制歌单),请说明实现方式与性能考虑。
## 4. 安全与访问控制
- 描述你的认证方案(如 JWT以及如何将用户身份传递给业务层。
- 说明你的授权策略:谁可以删除/修改谁的歌单?你是如何在代码中实现"所有权检查"的?
- 如果你实现了更多安全特性(如密码加密、角色/权限),请在此展开。
## 5. 测试策略与质量保障
- 概述你为本项目编写的测试类型(单元测试、集成测试等)及覆盖的主要场景。
- 列举 12 个你通过测试发现并修复的典型 bug说明问题成因和修复思路。
- 反思:如果以后需要继续扩展本项目,你认为当前的测试体系是否足以支撑频繁重构?为什么?
## 6. AI 协同开发反思
- 具体描述 23 个你在项目中使用大语言模型(如 ChatGPT、Cursor 等)协助开发的案例:
- 你给出了什么样的 Prompt
- 得到的回答中哪些部分是直接采用的?哪些部分你进行了修改或重写?
- 分析在本项目中AI 对你最大的帮助是什么?最容易"误导"你的地方又是什么?
- 总结:你会如何在未来的工程实践中规范、有效地使用 AI 作为编码伙伴?
## 7. 总结与自我评估
- 总结你在本项目中最重要的三点收获(可以是技术、思维方式或协作方式)。
- 按照课程要求的大作业评分维度(功能、架构、测试、安全、文档),给自己一个客观的自评分,并简要说明理由。