基于非计算机专业《C++程序设计》的教学改革探索
2015-09-10张艳华等
张艳华等
摘 要: 随着现代教育技术的发展与教育教学理念的更新,现代化的教学方式作为传统教学方式的有益补充,发挥了重大作用。本文以C++程序设计这门课为例,从教学建设、教学内容、教学方法、实验内容、考核方式等方面阐述教学改革取得的积极效果。
关键词: 教学改革 《C++程序设计》 教学平台
C++是近年来国内外广泛使用的现代计算机语言,它既支持基于过程的程序设计,又支持面向对象的程序设计[1]。在高校的多个专业都开设C++程序设计课程,但是C++涉及的概念很多,语法比较复杂,并且内容十分广泛,有不少专业的学生既没有计算机的基础知识,又没有足够的学时,这样使不少学生感到学习难度较大。本文以车辆专业开设的C++课程为例,阐述教学改革的过程及取得的教学效果。
1.合理选择开发环境
C++课程教学需要合适的软硬件环境,鉴于Window 7,Window 8下VisualC++6.0兼容性问题,教学过程中选择Code::Blocks作为编译器。Code::Blocks是一个开放源码的全功能的跨平台C/C++集成开发环境。由纯粹的C++语言开发完成,它使用了著名的图形界面库wxWidgets版,Code::Blocks提供了许多工程模板,其中有:控制台应用、DirectX应用、动态链接库、FLTK应用、GLFW应用、Irrlicht工程、OGRE应用、OpenGL应用、QT应用、SDCC应用、SDL应用、SmartWin应用、静态库、Win32GUI应用、wxWidgets应用、wxSmith工程。另外,它还支持用户自定义工程模板。Code::Blocks支持语法彩色醒目显示,支持代码完成,支持工程管理、项目构建、调试,便于学生做基于控制台应用的程序调试。
2.优化教学内容
目前我校使用的教材为清华大学出版社出版的谭浩强老师的C++程序设计(第2版),此教材内容全面,知识点的讲解很透彻。但是有些难点学生的理解仍然存在困难,再加上学时有限(48学时),所以教师在内容上进行优化,既要讲解基本知识、重点内容,又要做到让学生跟上教师的节奏,把内容掌握好,以够用为尺度精选讲授内容,对于指针数组与指向指针的指针、用户自定义数据类型、运算符的重载直接不再讲授。对某些知识点挖掘得不是太深,这样有利于学生对这门课程的整体掌握。
3.精选实验内容
C++是实践性很强的一门课程,学生通过实验可以加深对问题的理解,因为实验的学时安排有限(16学时),所以必须对实验项目进行精选,安排学生掌握最基本最重要的内容,如选择结构、循环结构、掌握函数、掌握数组、掌握指针、掌握类对象、掌握继承与派生、掌握多态与虚函数,同时分组完成课外的提高题。但对有余力的学生鼓励做ACM中的习题,同时给予相应的指导。此环节重点培养学生独立分析问题、独立解决问题及团队协作能力。
4.教学方法的改进
在教学中注重列举身边的例子,如在讲解类的定义时,我们定义了学生类帮助学生进行理解,以此提高学生学习知识的兴趣,也注重引进案例教学。但是,传统教学方法仍有一定的局限性,易受到时间空间的限制。再加上车辆专业的学生没有计算机的基础知识,在问题的理解上需要花费更多的时间,而教学学时有限,如何在有限的时间内掌握应该掌握的甚至是更多的知识,辅助教学方式的应用显得尤为重要。
笔者选择了网络教学平台作为辅助教学方式,此平台以课程为核心,每个教师都有独立的教学区,每个课程都有独立的学习区;其主要作用是让教师通过课程的管理,教学内容的设计,作业的布置,在线的评测,达到过程监控、增强教学效果、促进师生交流、完善自我评价的目的。此平台包括课程介绍、教学大纲、教学日历、教学材料、答疑讨论、课程问卷、教学邮箱、教学笔记、课程作业、试题试卷库、在线测试、课程管理等模块。
首先课程介绍模块,是对课程的一个总体介绍,从中学生可以获得对这门课的总体认识。教学大纲是更进一步指出本门课程需要掌握哪些内容,哪些是重点,哪些是难点,考核的重点难点考核的方式,让学生一开始就做到心中有数。并且教学日历中包含本课程的教学进度,可以让学生按照进度提前做好预习。
教学材料是网络教学平台的重要模块之一,在此模块中教师可以把教学资料上传,进行资料共享,学生可以查看进行学习,教师可以对教学材料定期维护,保证教学的内容与上课一致。便于学生预习与复习,同时教学材料具有权限防止不良用户的恶意修改。通过上传的材料,学生在课前的预习与自学中就会发现自己的薄弱环节,上课听讲就会有的放矢,提高教学效率。
在答疑讨论模块,建有课程讨论区、常见问题区、自动答疑区、邮件答疑区;在课程讨论区可以对课程中的问题发起讨论,如如何更好地定义类,如何理解对象,如何理解多态等问题。教师与学生可以对问题进行更深入的讨论,反复观看,弥补教师与学生见面时间少、问题得不到充分解决的不足;对于常见问题,教师将其放入常见问题区,学生可以很方便地从中找到问题的答案。
建立课程问卷,问卷的内容包括学生关于课程理解的难易,学生的学习态度,学生对本门课的期望等,学生对其作答,可以让教师充分了解对本门课的看法及学生的思想状况;为教学提供服务。开设教学邮箱,学生可以使用的向教师寻求帮助的邮箱,内容不限于本门课程,可以是所遇到的学习中的各种困惑,做学生学习过程中的朋友。教学笔记模块对教师的帮助尤为明显,此模块包括我的笔记本可以将教学中的心得记下来,以后参考;教师笔记集可以查看同门课程其他教师开放的笔记,以便取长补短;学生笔记集可以对学生的笔记进行查看进一步了解学生的情况。
开放试题试卷库模块,C++内容多,但学时有限,学生对内容的掌握程度需要通过不断地做习题才能得到巩固,但习题要有针对性。此模块教师可以录入不同章节的题目组成相应的试题及试卷让学生自检,做到查缺补漏。同时还配有在线测试系统,可以根据不同的组卷策略组成不同的试卷进行测试。
总之,教学平台的运用拓宽了教学的时间与空间,是对传统的教学方式的有力补充,以往的课堂教学往往是以教师讲授为主的灌输式教学,网络平台的使用打破传统课程的设计模式,将各种可以利用的资源结合起来,使学生根据实际需要,灵活便捷地获取学习内容。教师、教材、现代教育技术、教学方法和学生学习的有机融合,既可以不限制时空的教学,又可以进行单独的辅导,还可以进行网络的协同化学习[2],这是传统教学无法比拟的。适应当今社会教育的需要,拓宽培养人才的方式。
在教学中贯彻以学生为主体,教师为主导的思想,通过教学平台的使用,学生可以自主安排学习时间和在线测试,对没讲的内容进行预习,对讲过的内容进行复习巩固,及时调整自己的学习进度,合理安排自己的学习时间,教师可以对学习资源进行修改及补充,对学生的使用权限加以限制,发挥教师的主导地位及学生的学习主体作用。
利用此网络教学平台,学生可以通过自测了解自己对知识的掌握程度。通过课程讨论及问题答疑交流,教师可以更好地掌握学生的学习状况,对教学内容及讲授方法做出适当的调整,提高教学效率。
网络教学平台的使用,使教师与学生互动交流讨论的过程被全程记录下来,为教学的管理及日后学生平时成绩的评定提供依据。
5.考核方式改革
改革考核方式,不再是一张试卷定成绩。成绩计算公式为:总成绩=卷面分(65%)+实验得分(20%)+平台自测总评(10%)+解答问题得分(5%);充分体现重视学习过程、学习能力的培养,而不是单纯地记一记背一背,重视对知识的理解掌握,重视实践能力的培养。
总之,从过程看教学改革的效果显著,学生学习兴趣提高了,学习知识的目的性提高了,通过讨论学生解决实际问题的能力提高了,学习效率有明显提高。对教师来说,改革加深了对不同专业学生学习的认识,拓宽了教师与学生交流的渠道,弥补了课堂学时的不足,提高了教学效率,达到了双赢的效果。
参考文献:
[1]谭浩强,编著.C++程序设计(第2版)清华大学出版社.
[2]黄翔,蒋莉.高校网络教育规划浅析[J].江西教育学院学报,2006(6):56-57.