2022秋软工实践5:团队作业2-项目Beta测试答辩&课程总结

XGMYR 2023-01-08 23:11:11

2022秋软工实践5:团队作业2-项目Beta测试答辩&课程总结

这个作业属于哪个课程软件工程A_2022秋_FZU社区-CSDN社区云
这个作业要求在哪里2022秋软工实践5:团队作业2-项目Beta测试答辩&课程总结-CSDN社区
团队名称<03-双面>
学号032002312
Video demo 链接视频链接
GitHub 链接前端代码 后端代码 文档PPT与视频

1.总结与收获

1.1结对编程

在结对编程,我与另一名开发者配对,相互协作完成编码任务,能够促进交流和沟通,并且能够从对方身上学到很多新的知识和技能。

在结对编程作业中,我们使用了 Golang、Gin、Gorm 和 Vue.js 技术构建了一个实验室协同网站。其来源于队友在一个月前接的一份本校实验室网站的外包项目。这个项目非常的简单,接口也很少,采用前后端分离的方式,项目不同的部分都在独立的容器里运行,最后由docker-compose编排

[网站部署链接](Lab (rockrockwhite.cn))

img

在这个项目中,我主要负责前端开发,优化前端页面以及美化。

这个项目相对来说比较简单比较传统,使用的技术栈较基础,唯一的缺点就是,原本的开发者引用了一个css文件,点开一看完完全全就是屎山,几千行的内容,没几行是能用的。碍于开发时间问题,没有办法重新写css,这是结对编程中最大的遗憾。

在结对编程中,是我第一次接手到完整的项目,是项目经验从0到1的进步,同时学习并练习了前端开发,对后续的团队编程有很大的帮助。

1.2 团队编程

网站部署链接

在团队编程中我们大部分人算是人生第一次体验团队合作开发,对于团队的配合可以说是稀碎,团队工作模式经验不足,毕竟之前很多课的小组作业最后有可能都变成个人作业。在开发过程中,整体的人员工作分配还有不少提升空间。

在项目初期,团队在定项上花费了过多时间,经历了推倒重来然后再重新讨论制定细节,当然之后还有由于开发语言不同发生冲突只能换框架换语言的事情,不过这锅后端背。经历了前期定项的多次讨论之后,我体会到了点子诞生的不容易,开始讨论的时候,我们就想做出一点创新性的东西,但是整个团队都处于一种没有想法的状态。我因为在暑假接触过某国企的OA,了解了一些国企的工作流程,就有一点想法,想说我们自己能不能做一个班级用的OA,毕竟天天在QQ群里面发通知发表格是真的很烦。然后后面就根据这个想法进行拓展,变成了CoinSide这样一个面向团队协作的革新解决方案。项目初期告诉我,每一点想法都至关重要,都有可能是救命稻草。

img

在项目开发中,我主要任务是前端部分页面的开发,并且全程参与项目定项和产品设计,代码量相较于另一位前端(感谢大佬带带我,emmm,没错,我们项目只有两个前端,能做成这样简直是个奇迹)来说少不少,因为产品的耦合度较高,由于我个人实力不强,最难的部分只能让经验丰富的大佬来做。所以我完成的部分就是主体页面那些不太复杂的部分,但是在这过程中我的前端能力也提升了很多。

img

特别是因为我们组想要挑战自我,选择了一些比较新的开发工具,在项目开发中学习,效率真的高很多。

img

再说到工作分配我们踩的雷。在工作模式上,我们选择的是各司其职的工作方式,就是说,每个人的工作都是固定“职位”的,类似公司的工作流模式。在整个开发过程中,我发现这样的模式很不适合临时组建的小团队来完成一个项目,这样的项目更适合用“补墙”的模式,就是说,在不同的阶段,一个人饰演不同的角色,比如说,设计阶段,就几个人一起画图。因为如果指定某个人的角色作为设计的话,前期设计完后期的活就很少很少了,而且前期的工作压力会非常大。

2.技术与工具

这次我主要负责前端部分,技术主要是前端技术。

2.1 VUE

vue是一个很好用的框架,在这几年已经成长为比较热门的开发框架了。操作便捷,组件库丰富,且功能较为完整。大佬队友之前都在用vue2,这次换用vue3,相较于vue2,vue3极大提高了代码的可读性,便于开发者进行维护。

2.2 typescript

做前端至少得会JavaScript,这我觉得没啥好说的就不说了。由于我们本着对新技术的追求,vue框架我们选择用最新的vue3,相应的脚本语言我们选择用typescript。typescript的优点在于,他是静态语言,可以帮助开发者在开发期间就能发现许多代码bug,既减少了事故的发生,又使项目代码更加清晰,便于产品的维护。但是同时,这对于我们来说更像是一种灾难,由于TS的要求更为严格,对数据的规范更细致更严格,而且对TS的使用并不是很熟练,所以基本上每天都在跟“类型错误”拉扯,为了绕过这样的bug,只能遇到就声明是any类型,虽然说是绕过了这个bug,但是这样做就是把TS的优势给丢掉。经过我们的讨论,我们一致认为,typescript是好东西,在长期体量大的开发中有很大的优势,能够帮助开发者不要写出屎山,提高维护的效率和成本。但是,由于TS严格的规定,使得TS对短期开发并没有什么优势,反而会常常因为“类型错误”等bug拖慢开发进度,搞崩开发人员心态,所以,typescript并不适合小型项目短期开发。

2.3 element-ui/element plus

vue2用的是element-ui,而vue3用的是element plus。这可是个好东西,通过组件库,可以大大提高开发效率,把花在重复工作的不必要的时间花在重难点上,这也就是我们项目为什么能有如此完成度的一大原因。

2.4 docker

这次算是第一次体验docker,项目中期在前后端初步对接的时候我们团队把项目部署在docker上,使用十分方便。

2.5 apipost/postman

结对作业使用的是postman,团队作业使用的是apipost。经过使用体验,得出以下结论:postman用户多确实是有道理的,稳定。而apipost,具有极好的国内使用环境,但是提升空间还很大,前途无限(高情商)。

3.对队友说的话

感谢整个团队在这个学期的不懈努力,没有各位的付出,CoinSide不可能有这样的完成度。如果在项目初期没有讨论出整体细节,我们的进程不可能这么顺利(虽然中间有翻车,但是不至于由于逻辑设计问题磕磕绊绊中途吵架)。如果美工在那两周没有天天爆肝到凌晨一遍又一遍询问功能细节,我们的设计不可能这么好看,逻辑不可能这么清晰。如果没有后端大佬的疯狂输出,我们的项目不可能这么完整框架这么牢固。特别感谢我的前端大佬队友,不仅要突破那些技术难点,还要帮我解答我遇到的问题。同时感谢产品经理和测试人员等,我庆幸的是各位做事效率都很高,虽然由于工作量安排导致各位代码量低,但是安排给各位的工作各位都能很快的做完。我觉得我们是对的9个人。

我觉得我们确实是做到了用新的技术做出来新的有意思的东西。生活总是充满挑战,既是挑战,也是成长,不断向上攀登的过程不就是成长的过程吗?

愿各位未来能不断通过挑战,ljx’s team,散作满天星!!!

...全文
113 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

124

社区成员

发帖
与我相关
我的任务
社区描述
软件工程A2022秋
软件工程 高校
社区管理员
  • LinQF39
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧