谢秋华:实训有感
发布时间:2014-10-30   浏览次数:10

实训有感

三明学院信息工程学院  谢秋华

2014-5-252014-7-4我和2012级数媒专业的学生一起在厦门软件园迦博数码科技(厦门)有限公司参加cocos2dx游戏编程课程学习。学习时间总共六周,前四周老师讲授cocos2dx框架下的游戏开发知识,早上由授课老师按进度讲授编程知识,下午在辅导老师的帮助下我们按照授课老师讲的练习一遍,以达到巩固知识的目的。后两周先由老师组好队再由每个队自行选择课题并由老师同意后进行游戏的开发,每个队的队员分工合作齐心协力在规定的两周时间内完成自己选择的游戏的开发。74日早晨所有老师都到场给每个队的作品打分并颁发证书。这次实训我收获颇多,首先是由老师引入门,对cocos2d-x框架下的游戏开发有一些了解,其次,对于如何改进教学和培养学生也有一些感触。我想从以下几个方面谈谈自己粗浅的看法,以达到抛砖引玉的效果:

一、教学方法的改变

1、以往我们讲编程设计课程时比较注重讲基本语法,这些学生自己会去看,而且在课堂上把书上的语法都讲了,会造成学生的惰性,他们就不太会利用课余的时间自己去学习,只是在课堂上听听而已,效果可能也不是很好。这门课用的语言是c++语言,采用的是面向对象的编程方法,用的是cocos2dx框架,学生在大学二年级时就已经学过c++程序设计语言,四年级时再用可能会有一些遗忘,刚上课时花上三四节课时的时间给学生概括性的讲一讲面向对象的概念,而后布置一个包括这些概念的知识点的小型的课程设计的作业让学生做,下一次上课前先检查学生作业完成情况并打分且事先通知学生要检查打分,这样会促使学生主动复习c++程序设计语言,为后续的授课和学生后续的学习打下基础。

2、上这门课时,开始时把cocos2dx的环境搭建和一些基本概念告诉学生,让学生对cocos2dx的游戏开发有一个大致、总体的了解。而后再按进度教学,按照由浅入深,由易及难的这样一种过程安排教学。开始时,让学生学会用cocos2dx命令创建一个工程并运行这个cocos2dx默认的工程,以感性的认识一下cocos2dx游戏。接下来的课程就给学生讲cocos2dx的基本元素的添加和显示,这阶段手把手的教会学生在实验课上就把理论课上的知识学会并编程实现,通过下一节课上课前就检查的办法保证每个学生都掌握了上一节课的知识,如果有些学生没完成则个别辅导,不占用大家的时间。这样能让学生有成就感,使得他们有信心学习下去并激发他们学习的兴趣。而后慢慢加大授课知识点的量和难度,加大布置的实验作业的量和难度,达到使得学生在实验课上无法完成的程度,促使学生课后花时间自学和钻研。

3、原来上编程设计课程时的作业一般是按照知识点来设计的而且完成的作品之间没有什么联系,这样会使得学生产生拉几次课也没什么关系的观念,如果每次的作业都是在上一次的结果的基础上再进一步的完善,我个人觉得这样会引起学生对这门课的足够的重视,不会轻易逃课。这门课布置的作业围绕“捕鱼达人”这个项目由浅入深地滚雪球式地进行。先是一个场景并添加精灵,而后增加到两个场景并实现场景的转换和菜单的实现等,接着实现三个场景等,慢慢的在原有的基础上增加功能,最后完成“捕鱼达人”这个游戏。这样做,学生的兴趣会高涨。而且,布置作业时,可以分别对待,对学的好的学生可以对他们提高要求,如要求他们用多种途径完成同一种功能等,这样不仅能提高好生的学习动力和能力,而且能通过他们把整个班级的学习气氛带动起来。

4、学一门编程设计课程,首先要能看懂别人的程序,在这基础上才能进行模仿,并且要掌握调试程序的能力,做到自己编出运行正确的代码,然后才是在原有的基础上创新等。所以在给学生上实验课时要有意识地培养学生的阅读代码能力、模仿能力和程序调试能力,开始时讲授并给予学生的代码是完全正确的,到临近课程结束时,学生已经有一定编程经验了,可以故意留一些有bug的程序给学生并告知他们程序不正确,让学生在所给的有bug的程序基础上自己想办法实现应有的功能;或者把只实现部分功能的程序交给学生,让他们在此程序的基础上进一步完善功能,这样能有助于培养他们的能力。

5、学生学一门新课就像一个蹒跚学步的孩子,要让他们自己会走而不是一直由老师扶着走。俗话说“师傅引进门,修行在个人”。老师教学的目的不是仅仅为了传授知识,而是要教会学生懂得如何自学,懂得如何自己解决问题,从而为将来上了工作岗位独挡一面打下基础。所以学生遇到问题时不要急于把答案告诉学生,而是要一步一步引导他们学会自己解决问题。

二、对学生严加管理

现在的学生基本上是独生子女,而且我们学校是本二学校,生源质量没法达到本一院校那么好,很多学生的自控能力不是很好,上课时有的打瞌睡,有的玩手机,有的玩游戏,有的干脆经常旷课。这就只能通过学校的严加管理来达到让学生遵守学校规章制度和努力学习的目的。

首先学校要让每个学生知道学校的规章制度,入学时就要通过一些军训理论课让学生知道好好学习的必要性,军训后开始上课时课堂外由辅导员严加管理,如可以早上到宿舍检查学生有没有去教室上课,晚上检查学生有没有去晚自习,有没有迟归,由班干部和辅导员密切联系甚至联系学生父母共同督促后进学生改变现状。

课堂内教师通过一些手段来促使学生好好学习。如告知学生,每堂课都要考勤并且考勤分计入期末总评成绩(这个我们学院已经是这样做了)而且切实这样严格执行;上实验课时,每次课都要检查上一次课的实验作业并打分,这样对学生也会有一些约束力;若有些学生曾经有旷课,可以在他们下堂课到课时提问他们并给予打分并告知学生,这样对学生也能起到一定的警醒作用;教师上课时也可以充分发挥宿舍舍长的作用,通过他们来达到对学生严加管理和督促学习的目的。这是严加管教的一方面。另一方面,可以引导学生,让他们对学习产生兴趣。如充分发挥好生的带头作用,通过他们活跃课堂气氛,使得课程上的轻松而又有趣,有的时候甚至可以让学生在课堂上辩论(时间允许的情况下)并予以鼓励,这样学生的信心会增强,对这门课的兴趣也会增加。

三、考核方式的探讨

长期以来,学校一般都是通过期末一次考核和平时一些成绩来决定学生一门课程的成绩,这也造成了学生掌握了规律,平时抄袭,临近考试时突击一把甚至不惜失去拿学位证书的机会而作弊,造成很不好的学习风气。我们在公司学习的时候,老师对我们进行考核时不是笔试也不是机试,而是由老师组队,每个队自己组织探讨要完成的作品并由老师同意后开始进行作品设计,而后由老师对每个队的作品打分。我觉得我们的程序设计课也可以模仿着这样进行考核。比如采用“平时成绩+课题成绩”的方式对学生的课程进行评分。平时布置编程作业给学生并打分,可以不同对象布置的作业不尽相同,这样学生也不好抄袭,可以采用基础分上加减分的办法,如基础分10分,做的好的加分,有抄袭并且自己根本就没理解透的减分,并且告知学生这一状况是可以扭转的,如果他们期末课题做得好的话(当然必须是自己做的),任然有机会获得高分。这样是否学生不会再只是为了期末的分数而应付突击,对学习的积极性也不会被打击,会为扳回局面而努力学习?用做课题的方式作为期末考核方式可以比较全面的考核学生,如果程序设计课程只是出一些编程题考核学生,一来考核的知识面有所局限,二来学生只是学会做题,但是对开发项目还是一头雾水,而走上工作岗位后是要具有做项目的能力的,如果在校内就经常接受这种训练,这样对他们以后就业应该能带来一定好处。

四、加强师资培训

我们学校老师长期授课,经常接触的是一些理论知识,缺少项目开发的管理经验和实践经验,上课时讲到项目开发的实践课时也只是纸上谈兵,而计算机专业又是实践性很强的一个专业,教师要具有很强的实践能力,师资的实践能力的培养无疑是很重要的。这次在公司接受培训,跟着企业老师学到了很多东西。这些是在学校长期授课所缺乏的。如果有条件能经常和企业老师交流,无疑能丰富教师的实践经验、提高实践方面的能力,从而带动进一步提高教学质量。是否可以和企业建立长期联系,采用“走出去请进来”的办法多创造机会把老师派到企业实训或者把企业的老师请进学校对老师进行培训,以加强师资力量。

总之,这次实训开了眼界,受益匪浅。