这次实训我们组做的项目是“校园二手书交易平台”。整个开发周期是四周,采用前后端分离架构,前端用Vue框架,后端用Spring Boot,数据库是MySQL。我主要负责后端用户模块与商品发布接口的开发,并参与了数据库设计。
成果方面,项目基本实现了预定功能。用户能注册登录、发布商品、浏览搜索、下单和留言。我负责的用户登录注册接口用了JWT令牌做身份验证,测试通过率在95%以上。商品发布接口实现了多图片上传和基本信息校验,数据能准确写入数据库。整个后端项目部署到了云服务器,可以通过API文档正常调用。数据库设计了用户、商品、订单、评论四张主要表,索引优化后,关键查询的响应时间控制在200毫秒以内。
最大的收获是搞清楚了项目开发的完整流程。以前上课学的都是零散知识点,这次真从需求分析、技术选型、编码、测试到部署走了一遍。我深刻体会到团队协作和版本管理工具(我们用Git)有多重要。有几次代码冲突,就是因为没及时拉取最新分支,后来我们定了规矩,每天开发前先同步。另一个经验是,不能光埋头写代码。我一开始设计的数据库字段考虑不全,导致后来加“商品状态”字段时,不得不改了好几个关联的接口。以后再设计,一定要先和前端、测试的同学多碰几轮。
技术上学到了不少。比如用Spring Security整合JWT,以前觉得很难,亲手配了一遍环境、处理了令牌刷新问题后就清晰多了。还第一次用了Redis,给热门商品列表做了缓存,看到查询速度一下子提上来,挺有成就感。调试能力也锻炼了,学会用Postman多场景测试接口,看日志定位Bug效率高了很多。
当然暴露的问题也不少。一是代码规范,初期我写的接口返回格式不统一,给前端对接添了麻烦,后来用了统一的响应结果封装类才解决。二是异常处理不完善,开始只考虑了正常流程,一些边缘情况(比如重复用户名注册、非法参数提交)没做充分校验,后期补了不少。三是时间预估不准,商品搜索功能原计划两天,实际因模糊查询和分类筛选联动的复杂度,花了四天才调稳定。
总结这次实训,我认为实践是巩固理论最好的方式。下次做类似项目,我会在前期设计阶段花更多时间,把接口文档写得再细一点,勤做单元测试,而不是等到集成测试再修修补补。团队沟通要更主动,定期同步进度和难点。这次经历让我对软件开发从“知道”变成了“会做”,也看清了自己在系统设计和细节把控上的不足,后续学习方向更明确了。