这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu/SE2024 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/SE2024/homework/13315 |
这个作业的目标 | 回首过去,展望未来 |
学号 | 102202149 |
一、学程漫溯
1.1 初念软工途
- 对于软件工程,我刚开始以为是会教我们做一些web、小程序、APP的一些方法和技巧。
- 但是!第一节课老师就告诉我们软件工程不教编程!
- 更多的是教给我们一些相关的知识,以及做一个程序或者应用前的准备,也有关于团队的认识等等。
- 但是呢,其实更多的收获应该是这个过程,在这个过程中,我自主的去学习了很多知识,对软件的这一流程也有了一定的了解。
- 总的来说,收获满满!
1.2 辛耘与硕收
在整个软件实践课程中,我编写了(10000+)行的代码
- 能写这么多行代码,主要的贡献是结对作业和团队作业中开发的程序应用,其中的代码工作量比较大,花费了许多时间增删改。
在团队项目中我参与了( 养食记 )的设计与开发,我在其中承担了后端API接口开发和测试。
软工实践的各次作业分别花费的时间:
作业 | 花费时间(天) |
---|---|
第一次个人作业 | 1 |
第二次个人作业 | 3 |
第一次结对作业 | 4 |
第二次结对作业 | 5 |
第一次团队作业 | 7 |
第二次团队作业 | 7 |
现场编程作业 | 1 |
团队作业Alpha冲刺 | 14 |
团队作业beta冲刺 | 7 |
- 在软件工程课程上花费的时间
累计时间 | 实际周均时间 | 预计周均时间 |
---|---|---|
350h+ | 25h+ | 20h |
1.3 课业镌心处
印象最深刻的应该是Beta冲刺了。
- 当时的Beta冲刺答辩准备展示我们的程序了,但是在那时候的前两天,我们的程序居然还有一堆bug,当时一开始是挺闲的,毕竟我的主要任务是API接口开发,如果有问题应该会有人来询问我,那没人来应该就是没问题了,于是开开心心的玩两天,结果......等到最后两天的时候,我询问了一下前端的进度,才发现居然差那么多,没办法喽,只能改改改,每一个页面都有大大小小的bug,数据的显示、数据的调用还有什么七的八的,太多问题了,还有两天就要展示了,怎么就这?没办法了,既然前端不靠谱,还得我们后端上,于是我和我的后端队友,就去帮忙改前端代码了;得益于之前的结对作业,我对前端的一些设计也有一定的了解,于是熬了两天夜,才算是把一些重要的功能都实现了,现在想起来都是泪啊。
- 所以对这个过程也更加深刻,当然啦,收获也是不少的,至少知道了程序各种各样可能会出现的问题,感觉已经把所有可能会出现的问题都经历了一遍了,以后遇到也可以比较快的判断出问题所在,并且解决,这可能就是失败乃成功之母吧。
二、硕果盈囊
2.1 践履事难忘
2.1.1 个人编程
- 个人编程中,主要是学习了AIGC的作用和利用AIGC进行编程
- 说到这个,就不得不提一下我的“秀了个秀”这个小游戏了,自己成功的AI的帮助下用pygame成功的实现了一个仿“羊了个羊”的小程序,感觉成就感满满呀。
- 在编程的时候,我就在想既然要做,那当然要做的尽量完美了,该有的功能不能少呀。不过我很快发现,仅仅靠AIGC是不靠谱的,它经常会出错,而且有时候也无法达到我的预期。那怎么办呢,当然是给他喂资料啦,在计算机前辈的开源代码中,找到关于“羊了个羊”的代码喂给它,让他进行学习,然后在让他进行优化和修改,并且增加一些功能,不同的功能也可以通过喂给它不同的代码进行实现,甚至不需要都是用pygame相关的代码,可以让他进行不同库之间的转换。最后再自己检查一下代码,修改一下细节上的错误。在这样的一套流程下来,就可以很轻松的借助AI进行编程了。
- 在这边贴一下我的一些游戏截图,游戏的所有图片都是由豆包生成的,可以看出画风还是不错的。
- 整个游戏总共时四百多行代码,但是其实主要的功能就两百多行代码就可以实现了(我也没想到其实还挺少的),其他的都是一些游戏的附加功能,这部分很容易出现一些bug,所有花费的时间其实会多一点。
2.1.2 结对编程
-
说到结对编程,首先应该先夸奖一下我的好队友,工作做得非常的到位,我希望的功能基本上都能实现。不过这应该也是我的能力吧,毕竟我慧眼识人(手动狗头)。
-
这次结对作业实现了制作一个小程序,从原型开发的编程实现的过程,这个过程除了因为是使用微信小程序的框架,导致最后的上线没办法实现以外,其他的可以说都达到了一开始的预期。
-
这里先展示一下我们的原型设计吧(两个大男人能有多少审美呢,看的过去就行了),我们使用的Figma进行原型设计。在配色上我感觉是有点奇怪的(反正不是我配的),不过结构上还是非常不错的。毕竟是第一次进行原型设计,可以达到这种情况,我已经是非常满足了
-
然后接下来就是结对编程的重头戏了,那就是编程实现,这个作业当时刚好赶上了国庆假期(老师是会布置作业的),不过也是因为假期,所以项目的完成效率并不高,在加上此前我们并没有相关的经验,于是我和我的搭子在整个国庆假期中都在学习相关的知识和内容,从B站的教学视频到CSDN的博客,再到github的一些开源项目,什么都学一点。至于项目,可以说是零进度吧,啥都没干,不过我们也不急,反正先学着嘛,包不吃亏的。于是在国庆假期结束后的三天截至日期,我们很好的实现了我们的作业,个人觉得还不错,和其他组的作业相比,我觉得我们还是领先的。
-
不过其实我们最后实现的页面其实还是和一开始的原型设计有很大的出入的,没办法,毕竟设计的时候比较简陋,后面肯定是要进行修改的。
-
这个就是我们应用的登录和首页了,审美就比较在线了(没错,我设计的)
-
这个应用中,实现的比较理想的就是这个论坛了,有点像是群聊,不过实现了所有人的同步聊天。
2.1.3 现场编程
- 现场编程算是我们团队磨合的开始吧,团队编程的任务是完成一个大学生的记账本,怎么说呢,感觉实用性不高吧,因为大学生根本不带记账的(嘿嘿)。当时考虑到任务时间的限制和大家对个软件的熟悉程度,我们采用的是微型小程序开发者进行开发小程序,在研究完任务要求后,组长迅速的为我们分配任务,由于是初次一次编程,过程一直磕磕碰碰,不过最后除了对部分数据的处理和更新方面做的不是很完善以外,我们都很好的完成了任务。
2.1.4团队项目实践中的经验总结+实例/例证结合的分析。
- 在这次的团队项目实践的过程中,我学到了很多东西,这种经验和体会是无法单纯的通过几句简单的语句或者视频来说明的,如果你在这个过程中融入到这个编程团队中,你就会有某种责任感,希望你们的软件可以更加的完善,更加的优秀,不断的去实现它,不断的去完善它。
- 这个过程中,我们不断的遇到问题,解决问题,在这一次次的突破中我们不断学习到新的知识,不管是从自己身上,还是从队友身上,甚至可以是其他的团队的成员。去发现他们身上的闪光点,这是我在设个过程中所收获的。
2.2 技新助业优
-
简单的说一下,这次编程过程中,比较实用的几个软件或者技术吧。
-
首先是github,github可以用于代码托管和团队合作,可以通过使用git进行版本管理,里面还有许多开源的项目,不过一些命令可能对小白会比较不友好,但是确实很实用,值得去学习。
-
然后是Apifox,接口管理、开发、测试全流程的集成工具,对后端选手非常的友善,推荐一手。
-
还有就是飞书,适合团队管理,我们组长的最爱。功能非常的齐全,可以团队视频,共享文档什么的,很实用的一款软件。
2.3 术外韵华添
- 除此之外,软工给我们带来的就是关于一个团队的管理,和与队友的交流,团队里沟通真的很重要,严重影响项目的进度,所以遇到问题或者没有解决的方法,就应该和队友或队长沟通,有可能确实不是你的问题,是队友的代码编写错了,所以一定要沟通!
- 然后就是问题得不到解决的烦躁吧,这个是很常见的,遇到了一些技术上的难题,一直得不到解决,这个时候其实也没必要给自己压的太紧,容易吧情绪传染给其他队友,所以控制情绪也很重要。
2.4 随心漫语留
- 这里简单的贴几张我们团队的图片吧。
- 还有之前的团队视频
- 帅气的组长
- 我的后端好搭子
- 前端实力担当
- 团队活力
- 然后是一些团队照片
三、感恩情长
- 这边感谢我结对编程的好队友,同时也是团队编程里我的后端好助手,帮我分担很多压力,干活非常的实在,非常的适合成为一个新时代的码农小牛马,希望他以后可以找到一份好工作,over!