(1)将传统的教学模式移植到实践教学中,发挥教师在实践教学中的主导作用,切实提高学生的编程能力。在C语言的实践教学中,在理论课结束时,作者所在的教学团队会首先布置一下实验的题目,要求学生思考解题的思路。在实践教学时,教师会首先领着学生做几个类似的题目,告诉学生在这个程序中要注意什么问题;然后会让学生试着写程序。在实验课的最后阶段,通过小型的程序设计比赛,激发学生的学习动力,提高学生的学习兴趣。
(2)组织程序设计兴趣小组,有效地组织学生在业余时间练习程序设计。国家信息学奥林匹克竞赛中国队总教练、清华大学教授吴文虎说,学习计算机不是听会的,也不是看会的,而是课下在实践环节中实实在在的上机练会的。因此,有效地利用课余时间编写程序,对提高学生的编程能力至关重要。在C语言的教学中,课程教学团队通过兴趣小组有效地解决这一问题。在授课过程中通过定期为兴趣小组布置相关的程序设计题目,可以有效增强学生的团队合作能力,提高学生的学习兴趣。
(3)丰富学生的第二课堂,组织学生参加相关的比赛,进一步检验教学成果。为了培养学生对程序设计的兴趣,程序设计教学团队利用周末的时间组织小型的程序设计比赛,鼓励不同年级的学生参加。通过这样的比赛,既提高了学生兴趣,也为参加ACM程序设计大赛、蓝桥杯程序设计大赛等专业程序设计比赛选拔后台人才。
4. 保障措施
为了保证程序设计相关课程的教学效果,提高学生的应用实践能力,课程组得到了所在的学院和学校的大力支持,主要有以下几方面。
(1)要求学生必须有创新学分。在培养方案中,要求学生毕业时必须拥有4个创新学生,这些创新学分可以通过参加教师的创新实验室或者参加相关的比赛获取。这为程序设计团队组织学生参加相应的程序设计大赛提供了政策上的保障。
(2)执行本科生导师制。学院为能力强的学生配备导师,这里的导师可以是学院的年轻教师,也可以是能力较强的、被学院认可的高年级学生。这为程序设计兴趣小组的运行提供了保障。为高年级学生安排教师作为导师,为低年级同学安排高年级学生作为导师,可以使程序设计的兴趣小组持续地发展。
(3)成立创新实验室。课程组所在的学院为了鼓励学生提高自身的应用实践能力和创新能力,组织相关教师成立了创新实验室。在程序设计创新实验室里,学生有更多的机会参与教师的实际课题,近距离体验或者参加ACM程序设计大赛、蓝桥杯程序设计大赛、软件设计大赛等相关比赛,提高对程序设计的兴趣。
5. 成果
通过持续三年的实践,软件工程系的学生实践能力有了长足的进步,专业建设和质量工程建设也取得了丰富的成果。《高级语言程序设计》、《面向对象的程序设计》、《数据结构》、《数据库原理与应用》等课程获山东省精品课程立项,《离散数学》、《Java程序设计》、《C#程序设计》获校精品课程立项。软件工程专业先后与HP公司、东软集团、NEC(济南)等相关专业软件公司成立软件人才合作培养基地。同时,软件工程系的相关教师将相关的教学材料整理,和清华大学出版社合作,先后出版了《C语言程序设计》、《基于案例教学的C++程序设计》、《C#.net程序设计》等有特色的教材。同时,软件工程的相关学生积极参加ACM程序设计大赛、蓝桥杯程序设计大赛等相关比赛,在省级比赛和全国性的比赛中都取得了优异的成绩。通过程序设计思维的培养训练,软件工程的大部分学生编程能力得到了很大的提升,软件工程专业的就业率稳居学校工科专业的前列。
6. 结语
本文以C语言的教学为例,对程序设计类课程的教学现状进行了分析,并从理论教学和实践教学两个方面对程序设计思维能力的培养进行了探索和实践,取得了阶段性的成果。在下一阶段的教学工作中,将重点探索基于校企合作平台的程序设计能力培养,借助校企合作平台提升学生的工程实践能力。