行百里者半九十
这个作业属于哪个课程 | 2021春软件工程实践S班 (福州大学) |
---|---|
这个作业要求在哪里 | 作业连接 |
这个作业的目标 | 对课程和技术的回顾 |
其他参考文献 | 《构建之法》 |
目录
第一部分课程回顾与总结
1.关于快速《构建之法》后,提出的5-10个问题是否有新的看法。
(1)关于过早优化-> 原问题链接
- 在本次团队项目中,就有出现过对于一些功能(例如界面加载,点击反馈等效果)进行优化,后续UI界面又改为使用使用UI模板,这些优化项在UIManager类中转为接口方法,导致前期做的一些优化白做了,这种属于过早优化。其他情况应该根据严重性判断缺陷的等级,对于严重性不高的缺陷可以暂时不进行优化。
(2)团队间应该如何进行进度的统筹规划? -> 原问题链接
- 团队作业真的很需要团队之间的统筹规划,PM也就是项目经理的工作真的至关重要,要做好团队的分工,根据不容队员的能力进行合理分工,才能同步整个项目进度。挺考验组长或PM的管理能力和组织能力的。
(3)关于“成功的团队更能创新”的思考->原问题链接
- 实际上不是成功的团队更能创新,是成功的团队有更多的能力和资源保证创新,人总有奇思妙想,但是要去实现这些奇思妙想需要付出一定的代价,小的团队往往没有那么多能力和机会去试错(当然也有选择孤注一掷的,但毕竟是少数),他们只能够先做出标准化产品,再慢慢往小的地方去创新。但是成功团队则有更有能力去实现这些创新的奇思,他们评估这些改动的风险与收获,并使之合理化的实现。
2.在需求/设计/实现/测试/发布阶段(一共5个阶段)中,每个阶段收获最大的知识或能力是什么?
(1)需求阶段
- 需求阶段是大家集思广益讨论的阶段,一开始分析用户画像,总结用户需求的时候真的需要很细心的人来主持,才不会遗漏一些问题。我从中学习到了,我们该细心一些。
(2)设计阶段
- 设计阶段需要很多创意点子,让自己的产品在满足需求的前提之下可以有过人的亮点。设计的时候还得考虑各种类的实现,为了避免后期较大的更改,前期的设计真的很重要。本次团队项目中就有遇到过一些一开始的设计不具体,导致后面一些类,缺少一个调用的接口类,或者说管理类。要说收获得最大能力可能就收获这样的一个教训吧。
(3)实现阶段
- 收获了很多Unity相关的知识。原本我是不会Unity的,但是有一些UE4的相关基础,但是同为游戏引擎,UE4很早就启用了蓝图编程,避免了很多底层调用的问题。而Unity现在才刚开始起步做这个,所以还是得先学习Unity脚本部分还有动画、特效之类的制作。因为不同引擎这个的实现方法还是不一样的。比如UE4是C++,Unity是C#。
(4)测试阶段
- 测试阶段遇到一些bug,印象比较深的是一些体验方面的bug,需要通过数值修改来达到优化目的,就必须反复的修改调试具体数值,让他达到合理。算是加强了我的抗压能力吧,因为中途Unity经常未响应。后面改bug的时候也出现过改动提交不上去的问题,最后只能重新获取分支从头改一遍所有bug,真的很影响心态。
(5)发布阶段
- 发布以后也发生了很多意料之外的问题,也有很多人对于我们的游戏做出了不同的评价,对一些bug的反馈,对于音效的肯定之类的。后面有和部分的用户进行交流,交换优化的意见,这也让我增强了一些沟通能力。
3.结合自己在个人项目/结对编程/团队项目的经历,谈谈自己的理解或心得
- 从个人项目到结对编程到团队项目,项目的规模和难度越来越大,从一个简单的程序,到一个功能封装的网页,再到一款可以发布的游戏,变多的不仅仅是代码的量,还有需要一起合作的人数。面对更多的人在一起工作的时候,不可避免的会出现一些沟通上面的问题,团队之间的协同合作真的相当重要。同时在多人项目中有一个好的leader也很关键,不仅仅是代码能力,更看重沟通能力。只有把每个人的力量都用起来,发挥到极致,才可以做出最好的作品。
个人技术博客
摘要:PlasticSCM是Unity自研的版本控制软件,内置再Unity引擎中拥有不输于GitHub的功能。而且是专门用于管理Unity项目的,相比之下更专业,更好用。