我的 2021 上半年 - 个人的一些感想与总结

我的2021上半年 - 个人的一些感想与总结

开学,成为项目负责人 | 3月

还没开学,老师就在钉钉上通知我,以我为负责人,成立一个项目组。

这个项目是关于桑蚕的项目,包含了服务器端、后台管理、小程序。同时这个小程序包含了蚕病识别以及蚕座密度检测(其实蚕座密度就是蚕虫数量)。

老师给我们订了个ddl,在5月20日前完成。

因为之前没怎么做过算法,所以我对这块心里还是没底的。

刚开学,3月初到20号这段时间,一直在写需求分析报告和架构设计文档。众所周知,程序员最讨厌的就是别人代码没写文档,以及写文档。

写文档这个事,还是挺重要的。以前我在学习Java,入门的时候,对于怎样设计、怎样实现,都是很蒙的。就是如果你告诉我,写出来的程序该长成啥样,我可以很快地敲出来。

但是一旦让我自己设计一下,从头实现,速度就慢了很多。我甚至不愿意去思考,每当我去思考设计架构时,就会去逃避,因为没有对应的方法论来支持我去做这些。

所以在前期写需求分析以及设计文档时,都磨磨叽叽,实在写不好。所以我们就只能照葫芦画瓢地去写文档,画原型图。就这样两个文档我们写了20天,三个星期。😂

事实证明,前期的分析做到位了,确实后面开发就快多了。

开发进入高速状态 | 4月

由于前面设计文档写的详细,对于数据结构的设计,后端的设计,让我们后台开发进展极快。我们是3月20多号开始写后台,在4月初大概3号还是4号的时候,就完成了大概80%。

不过这个时候的后台还只是个骨架,只不过把CRUD全部弄好了,像登录啊、token验证之类的都还没有去实现。

在和学长交流之后,我们选择了类似JWT的方式来存储用户信息,将部分信息以token的形式存在用户端。关于这部分的设计在之前的一篇博客中就有。

在最开始搭建框架,写pom依赖的时候,就出现了一堆问题。

spring的版本乱选,附带组件的版本也乱选,最后一堆maven依赖冲突。

后来看了学长们以前项目的pom依赖文件,发现了标签,是专门来做这种版本管理的,指定了parent后,parent里指定的组件,版本都已经选择好了,不会出现冲突。

还有一堆以前没踩过的坑,比如我们的controller想写成REST风格,但是又没完全按照这种规范,导致出现了一堆接参问题。这个也为后面开发小程序和web后台埋下了隐患。

在小程序中,使用wx.request来发送请求时,它默认是 application/json 的形式。我们的controller没有做对应的处理,使用了form表单的形式接参,自然参数都没有被解析出来。

后来我看了不少项目,发现好多都是使用实体类来接参,并且有对应的注解,来对参数进行校验。

同时在解决登录token问题时,也深入了解了一下spring带的AOP,学习了一下动态代理。上一篇就是关于动态代理的博客。

开发小程序与web后台 | 5月 ~ 5月底

得益于我在本科大二时,自己学过一些前端的东西,而且在学Java的时候,也写了一些页面,从jsp到thymeleaf,以及后来的vue。

微型小程序方面,其布局几乎和web那一套差不多(前端大佬勿喷,确实挺像的),所以开发就还算顺利,最多遇到不会的查查手册。

在开始开发web前,和实验室的克文学长交流之后,我们决定使用vue。因为用vue的人多,而且文档比较齐全,所以vue比较符合我们的需求。

在网上找了一堆项目后,发现有个叫vue-element-admin的项目,把很多业务的页面都给做好了,直接应用就行。同时这个项目是以element ui为基础的,所以上手较快,我们通过文档,很快就写完了。

此时是5月底,基础已经开发完了,剩下的就是算法了。

不过也因为开发任务比较重,所以这段时间没什么积累,博客的产出速度慢了很多。

同时这个月,因为做项目老师发了补助,在冲动下,🐛了一个switch,为了玩塞尔达(yyds)。

下面就是美图共赏🐶

塞尔达与林克在战败后的场景

拔大师剑

初见杀

在五月底,我们实验室出去轰趴了一次,欢送研三学长学姐毕业,学长学姐们都非常厉害,各个都找到了心仪的工作。

轰趴我们打了麻将、唱了歌、打了牌、玩了switch上的派对游戏,玩的很开心。

项目接近末尾以及合肥出差 | 6月

6月份我们的项目基本上接近维护阶段,主体开发基本完成,剩下的就是修修补补,完善了。

本来准备在这个月18号过生日,和室友们一起出去好好恰一顿。结果当周周二,老师告诉我们要去合肥出差谈项目。

好家伙,这波是特殊的生日过法。而且就正好在生日前一天出差,一直到周六结束。

到了合肥,老师也把以前毕业的一个学长叫了过来,一起吃了个饭。

和老师还有学长吃饭

后来项目谈完了之后,我们几个一商量,觉得合肥没啥玩的,就定了票,直接跑到南京去了。

中山陵

总结

这个学期,因为做项目,加上自己懒,所以没有学什么新的东西。

这个暑假,准备学一些东西,目前是在看编译原理方面的书,之前一直没有看,觉得要了解一些。

也确实要做些规划,不能停止学习。