经过大二上半学期的学习,我主要学习了java(包括java web)和软件工程概论。Java的学习目标学做一个简单msi系统。然后在前半学期中也学习了许多其他java语法的知识点。而在下半学期我们利用课余时间由培训老师授课的方式学习了简单的java web相关的知识。主要包括jsp文件的代码编写。数据库的连接及操作。然后我们下半学期学习的课程是软件工程概论,以《构建之法》作为课堂,讲述了我们在构建项目的一些知识点。然后在授课期间我们进行了两人结对编程,以及书写用户场景描述等与课程相关的练习作业。然后我们在班上自由组成小组,进行了《加减乘除》网站的开发。在这次开发网站的过程中,我们总共有两个冲刺阶段。在第一个冲刺阶段之前,我们团队进行了我们网站的功能,数据库表,在操作类以及其他的设计文档。然后在第一阶段我们每天进行站立会议总结昨天的成果,今天和明天的计划。然后讨论我们最近编程时遇到的问题。通过第一阶段七天的冲刺,我们团队完成了管理员和学生角色相应的功能。然后我们休息了一周然后进行了第二阶段的冲刺,完成了老师角色的功能以及网站中所有展示界面的美化。在第二阶段冲刺完,我们把我们的项目上传到云服务器,并且邀请了用户来做用户体验。并且完善了我们的团队项目相关的文档。
在软件工程概论课上,以邹欣的《构建之法》为主本,在老师的指导下我们边上课边对书中的某些内容进行了实践。我课余时间阅读完了《构建之法》这本书,这本书给了我在平时的编程中一些帮助:1、积累软件开发相关的知识,提升技术技能。2、积累问题领域的知识和经验,(例如:对游戏、医疗或金融行业的了解)。3、对通用的软件设计思想和软件工程思想的理解。4、提升职业技能,包括自我管理的能力,表达和交流的能力,与人合作的能力,按质按量完成任务的执行力,这些能力在IT行业和其他行业都很重要。5、实际结果,参与的产品用户评价,市场占有率,对用户的价值及自己的作用。了解到软件工程师的思维误区及自己的职业发展和发展的考级之路。6.在结对编程中,学会了代码设计规范的重要性及结对编程每一个人的作用与角色,及如何高效的反馈信息给合作成员团队。7.在团队编程中,在了解到团队合作中每一个人的作用,经历了一个软件由需求分析到最终发布的整个流程,增强了自我责任感,学会了各司其职,对项目负责,对小组负责,在对于项目制作过程的一些变化,要保持敏捷,实时更新团队计划。
通过这一学期的学习,我感觉我只学会了java及java web方面很少的东西。许多有深度的问题并不会,尤其在下半学期临近期末考试时,本应好好复习考试科目的时间都用来完成我们的团队项目了。感觉有点学习的知识点比较少,但练习很多。
这一学期我们的java和软件工程的任课老师是同一人。但是上课时采用了课堂测试的方式。刚开始感觉很新奇。课堂测试有时间的限制,所以在考虑到尽快完成测试的原因,所以在测试时感觉非常紧张,感觉编程有点像800米的冲刺。有时课堂测试会占用大部分的上课时间,再加上我们的学习课时本就少,所以最后感觉并没有学习很多东西。所以我希望老师能够减少课堂测试的时间。
其次,就是我们最后是团队做项目,并且软件工程的结课时间太晚,正好赶上了我们的考试周,所以最后一两周我们还是在赶着完成软件工程的结课作业,使我们的复习时间大量减少。在考试周时既担心着其他科目的期末考试,又想着软件工程的结课作业。所以我希望老师能够把这门课的结课时间调整一下,或者放在课时周前或者放在考试周后,不再这么影响我们的复习时间。
总的来说,由于每次的课堂测试和大量的课后作业,我感觉我学习java和软件工程的过程非常充实。
但是由于其他课堂的教学方式,比如:和其他人进行结对编程等,让我感觉课堂还是充满了乐趣,并且通过这种尽可能的亲身实践的方式让我对课堂教学内容印象更深了,更不易忘记。
以上就是我通过一学期的学习的经历和收获,并且对老师的一些评价和建议。可能由于我个人的一些主观原因,可能对老师的某些评价不是很客观,希望老师不要介意。