一、基本情况
(1.1)请回望第一次作业,你对于软件工程课程的想象
对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
初始的期望是做一个自己肯玩得下去的小游戏。第一次个人编程作业中,因为没有接触过C/C++之外的语言,完成起来遇到了很多困难,也促使着我学习其他的知识;第二次结对编程作业中,初步想使用小程序开发,感觉对没接触过前端的我很不友好,过程很曲折,最后转去学习unity引擎开发,虽然在规定时间内没完成网络对战,但对于我而言做出的单机版猪尾巴已经具有一定可玩性,一定程度上达成了自己的目标;第三次团队编程,队友决定使用小程序开发,因为我学习了一部分java加上对小程序的不习惯,决定加入后端开发;结果由于队内决策问题,小程序前端崩溃,经过讨论决定转向unity开发;虽然过程很曲折,最终还是学到了很多unity开发的经验。
- 达成的期望和目标:
- 学习了新的东西,包括Java、MySQL、C#、Unity;其中C#和Unity的成长较大
- 面向对象的思维得到极大的提升,用代码完成游戏逻辑的能力有很大的增长
- 存在的不足:
- 原型及前端的审美还是一塌糊涂
- 没有深入了解服务器及后端知识
(1.2)总结这门课程的实践总结和给你带来的提升:
-
在软工实践中我写了1900行代码
-
软工实践的各次作业分别花费的时间
# 作业 花费时间(分钟) 1-2 个人编程作业 670 3 结对编程作业 1640 4 团队介绍与选题报告 170 5 团队需求分析报告 280 6 团队项目之现场编程 160 7-13 Alpha冲刺(含总结) 2600 14-19 Beta冲刺(含总结) 1150 -
讲述令你印象最深刻一次作业?为什么这次作业令你影响深刻?
团队编程作业。如果说结对编程作业使我初步了解Unity及C#,那么团队编程作业则大幅度的提高了我对Unity的掌握及使用C#实际开发的思路和经验,也让我真正体会到了面向对象的玄妙之处。同时,结识一群小伙伴,一起熬夜、一起赶工、一起讨论、一起打牌,也是很快乐的一件事。
-
在软件工程课程上花费的时间(预计花费时间参考:同时贴出开篇博客“你打算平均每周拿出多少个小时用在这门课上”的回答
累计实践 实际周均时间 预计周均时间 130h 10h 4h -
介绍学习到的新技术或生产力工具以及它们给你带来了哪方面的作用?
- Unity:以C#作为语言的游戏开发平台
- MySQL:数据库软件
- Navicat:数据库可视化工具
- auto.js:js脚本编写工具
- Typora:Markdown格式的文本编辑器
- 微信开发者工具:开发微信小程序,虽然我最后放弃了
-
其他方面的提升。
- 提升了自学能力,在实践的过程中,很多知识都是没有接触过的,再加上喜欢赶DDL的坏习惯,往往要快速入门一个未使用过的工具或技术,极大的提升了我的自学能力
- 提高了沟通交流的能力,在团队作业中,要不断与团队内的同学进行讨论交流,良好的沟通能力非常重要
- 锻炼了良好的心态,和团队成员协同工作、沟通的能力变强
- 提升了规划能力,从这几次作业中可以体会到做好规划是很有必要的
- 学会了总结,总结能让自己对这一段时间的工作情况有更清晰的认知,有助于反思与改进。
二、总结与收获
经过这几次的编程练习,个人的代码能力得到了有效的提高,也让我学到了很多的东西。我最大的体会就是前期的规划设计非常重要,个人编程作业,我大部分时间都花在前期的思考中,包括决定使用哪种语言,具体实现的思路和方法等,就是因为没有做好规划,而且认为难度太大对自己产生了很大的怀疑,不想去做而浪费了很多时间,导致最后用C++艰难的完成任务。还有就是主动学习的重要性,无论是个人编程还是结对作业亦或是团队作业,都体现了主动学习的重要性。只有主动去学习了,才能有更好的知识储备,才能使自己对“想要干什么”、“能干什么”有清晰的认识;
三、致谢
-
这学期下来,你最感谢的人是谁?有什么话想要对TA说呢?
我最想感谢的是团队项目的组长胡驰,有你我们的团队才能够组建起来,感谢你在项目中对我的包容和理解,也感谢你为团队在项目里安排工作,还有督促各环节的进度,才能使我们协同工作,互相学习。