第二次软件工程小学期终于在即将步入大三之前结束,这次小学期两个礼拜不到,工程期更短,安全领域,题材更专业,做了队长,压力更大。但是这一次短期高效的Android应用层开发学习也着实给我自己及跟的项目及时奠定了基础和信心,也给即将步入的大三的我一个心理准备,以及再次让我探底什么是自己的极限,技术承受的,也是心理承受的。
1. 组队。
每一次组队,不同的队友,我都希望有好的关系和氛围,毕竟个体矛盾必然会阻碍项目进度。但矛盾是不可避免的,但却不是不可调和的。队长起到的作用在这里要稍大,在顾及个人自我调节能力情况下,必须积极参与整体把握和协调。好的沟通和交流才能促进团队每个人的和谐稳定发挥。好的队长,一是依赖于自己的能力,二还要依赖于与之适合的队员和队友。其实队长在压力很大的时候,还是很奢望队员有一句“我懂”,不管你懂不懂。zxh说的好,能力越大,责任越大。本身自己的Java编程基础不是一般水,Android开发碰的也是皮毛,作为队长便不得不时刻提升自己的意识和警惕性。把握大局和全局观,监督开发进度,调动积极性,队长在这些方面起的作用不算大也不算小,但它们却是一个团队精神面貌的关键所在。
2. 代码。
我的观点开始由项目组队员间互相学习互相消化转向成更注重工程的紧凑性和效率优先。可以工作的软件,胜过面面俱到的文档。把一个题设解开拆成一个一个相对独立的模块,再由相对独立的分工,经由相对独立的测试,敏捷开发模式也许是一个应对于高效产为题的优解。对Android和Java的编程学习属于赶鸭子上架,大二下学期初接触的Java学习完全忘光,派不上用场。暑假中的Android初学者项目也只是起了一个引导的作用。但通过这一次实体项目的自我尝试,反而达到了将以前的东西温故知新的感觉,对他们的感知达到了一个较新的高度。这也许和以后实验室或研发职位的开发模式会比较接近,分哪一块任务看哪一块知识,用实例模块和产品补充对不熟悉知识的实践经验,而不是对某一语言或者标准进行深度学习。诚然,《21天学会…》与《深入浅出…》自是深度不同,而我们须根据自己的实际情况,采取适当的选择策略。
3. 压力,刷夜及其他。
这次的压力主要仍来源于对不熟悉技术领域的恐惧,推进速度之慢及项目各模块间进度不匹配,到中段时个人包揽客户端非通信部分的编程设计也是压力来源之一。好在这次因为队友分着写文档报告做PPT准备演讲比较没那么劳累,工期较短没有使压力再扩大化。唯一刷夜的一晚主要还是集中注意在客户端的功能完善和优化上,最后一夜的刷夜计划则由于我一整天早起没午觉而搁浅了,而验收和演示程序当天也因亢奋晚睡早起搞得人好狼狈。队长需要休息。
每一次团队项目合作都可能带来不同的技术体验和人际体验。我们现在觉得编程不是技术活,而是体力活,也许以后这种感觉会更加。一个明确的任务指标,最首要和最难的就是解析出架构,模型,算法模块,而团队合作的核心仍旧是分工,分工好则合作好。最后,感谢队友。
如果你决定了要当一个好的程序员,那么请你放弃游戏,除非你是那种每天只要玩游戏就能写出好程序的天才。与每一位过去,现在和未来的队友共勉。