距从6月29号开始到现在已经过去了接近一个月了,接手的第一个项目——Winner Club也算是告一段落了。这是第一个商业形式的项目,要求比较高,由小桑学长和腾飞学长一起带着做,收获确实非常非常的大,比我以前做的任何一个作品收获的都要多。不管是技术选用、工作流程、代码质量、结构设计等都和以前有了质的飞跃。
这次的Winner Club项目是一个微信小程序,需求是老师可以在小程序上发布英语教学视频或音频,学生和家长可以通过这些课程学习英语并打卡,就是一个小型英语教学平台。我这次主要负责后端,而且负责的是一些非常简单的接口,基本上都是最简单的CRUD(就是板砖。。)。小桑学长则是做了绝大部分的难活,包括后端项目环境的搭建(配置过滤器、拦截器、自己写注解实现权限拦截、请求用户的获取),并且写了比较难的接口——用户的登录授权和文件的上传和下载,还有后期服务器环境的配置、dockerfile的编写。
我也是实际感受到前期工作准备的扎实,对后期开发带来的方便。我们差不多在7月5号就结束了第一版后端接口的编写。之后的10天内都是在不断的修改接口bug、优化查询、并根据前端需求提供和修改接口。还有服务器的部署和shell脚本的编写,基本上在16号就结束了大部分的工作。
前端小程序这边确实比较困难,由于页面样式要求的比较高,所以也是一直在改,我也突然感觉前端并没有想象中那么简单了。
我也是打心底佩服小桑学长,让我感受了一次抱大腿的感觉。当然在做项目期间小桑学长和腾飞学长也都帮助了我特别多,我也是十分感谢两位学长这段时间对我的指导。
下面列举比较大的收获:
1. github flow流程
2. 基础环境搭建,包结构和一些基础配置
3. 过滤器和拦截器来获取当前用户信息
4. 自写注解进行权限控制
5. Mybatis Plus 强无敌!逆向工程,通用mapper,条件构造器,分页插件等各种黑科技!
6. dockerfile + shell脚本配置后端环境
7. 查询方面的优化
8. Content-type的选取和影响
项目第一版不足的地方:
1. 数据库设计方面:文件表设计有缺陷,导致和视频相关的表在编写代码时都出现了问题,项目过程中只是添加字段来快速到达需求,后期估计还是要大改。
2. DTO、BO、PO、VO、DO、AO方面了解不足,导致接口前期接口参数过多,维护起来较差。
3. 错误码一开始并没有规定太完善,导致前端无法获取准确信息。
4. 日志方面配置和输出的不够完美
5. mybatis plus的很多黑科技没有用到,比如AR操作、swagger支持、自动填充。
以上都是比较大方面的,项目过程中前前后后总结的小问题/知识点有50个左右,由于这段时间的实习答辩和自考复习,这些内容都还没来的及总结,都是先记录了下来,在自考结束之后(8月2日)会再进行一次问题大总结。
网友评论