◆王岩 卢曦 陆盈
作者:王岩、卢曦、陆盈,南通理工学院讲师,研究方向为优化计算技术(226002)。
C语言是程序设计人员必须掌握的一种语言,在培养计算机专业和非计算机专业人才中都起着非常重要的作用。因此,该课程的教学方法和模式也一直为许多教学工作者所探讨,并且许多学校都开设了C语言程序设计教学,并将它作为主干课程。
C语言程序设计不仅是计算机专业的一门基础课,也是非计算机专业学生的一门基础课程,是一门集理论与应用于一体的课程,具有较强的实践性和发展性。C语言程序设计应用范围较为广泛,可以作为系统设计语言,也可作为应用程序设计语言,同样可以作为单片机或嵌入式系统的开发工具。通过这门课程的学习,重要的是要提升学生解决实际问题的方法和技能,培养学生创造性的思考和设计程序的能力,锻炼他们的逻辑思维能力。课程重视实践环节,强调实践编程和上机,课程的考核方式主要采用编程和程序调试,教学中以激发与鼓励为主,让学生勤动脑、多动手,在实践学习过程中不断完善理论基础知识,提高实践技能。通过长期的教学实践,发现C语言程序设计课程的讲授适合开展启迪式和探究性教学。
1)研究性教学是教师通过指导学生选择和确定与学科相关的专题进行研究,使学生在独立的主动探索、主动思考、主动实践的研究过程中,吸收知识、应用知识、解决问题、获取新颖的经验和表现具有个性特征的行为,从而培养学生创造能力和创新精神的一种实践活动,是一种现代型的教学方法[1]。这里的研究不是脱离教师指导,而是指根据学科和学生知识广度的差异,激发所有学生都参与到学习中来,提高学生解决问题的能力。一般说来,研究性教学与接受性教学是两种相对应的教学方式,接受性教学方法通常可以在较短的时间内通过大信息量的传递,让学生掌握到最需要的知识,可在一定程度上提高教学效率。而研究性教学与接收性教学有所不同,其具有一些后者不具备的内涵和特性,在高校教学中有较好适用性。
2)PBL是一种以问题为基础,以课程设计为主,以学生为本的教学方法,近年来得到许多教育工作者和学者的关注。文献[2]提出利用研究性教学进行C语言程序课程的实践,并给出了相应的实现方法,从而提高学生的学习积极性,进而对学科进行比较深入的探究;文献[3]讨论了研究性教学与研究性学习之间的关系,为研究性教学方法的应用提供指导;文献[4]把科学素养等元素融合到教学当中,旨在提高学生的综合素质,并提出了一种研究性教学的基本架构;文献[5]给出了一种小组讨论和教师指导相结合的PBL教学方法,在注重知识传授的同时着力培养学生的探索精神和创造能力;文献[6-7]给出结合PBL方法进行C语言程序课程教学,并针对网络环境的使用和教学改革提出相应的方案。
3)基于PBL的C语言程序设计课程研究性教学模式是一种启发型的教学法,目的是让学生能够自主地从解决问题的方法中学习到知识的内容,主要流程是:教师根据课程情况设计问题→组织学生参与→启发学生解决问题→成果展示→总结研讨。在实施过程中需要教师把握学生的“代入感”,鼓励学生一起参与;也需要教师在设计问题时不能太难或太易,否则可能打消学生解决问题的积极性,或者可能削弱学生的兴趣;同时需要同学生有固定的联系通道,以便及时处理整个课程学习过程中遇到的问题;而且需要教师不断拓展自己的知识面,继续提高自己的知识水平和教学水平。
基于PBL的研究性教学模式示意图 基于PBL的研究性教学模式按照流程可分为开始阶段、开展阶段和评估阶段三个阶段,根据学习目标可分为提出问题、分析问题、解决问题、结果评估四个环节,每个环节是递进关系。实施过程中,首先要根据授课情况对学生进行分组,每一组成员在6~8人,实行组长负责制,由组长负责分配协调组成员的具体工作,教师只是对每一个组分配任务;其次,选择合适的课题供学生探讨,课题的来源多样,如教材、参考资料或者互联网资源等,授课之前需要根据不同学生(本科和专科)修订课题;再次,要讲解和分解课题的任务,并制定课题的总目标;此外,要激发和鼓励学生对课题任务进行探索,利用各种资源找到解决问题的途径,如互联网、图书馆、同学、家长等资源;最后,为避免学生之间的抄袭或小组成员懒惰情况,需建立完整的考核体系,如笔试、编程、作业和实训答辩等,在考核的时候展示和评价每个小组的课题研究成果。
在整个学习过程中,每个小组就是一个小团队,他们之间既相互独立又相互合作,还可以将进展情况或者遇到的困难反馈给指导教师,而教师则起指导和辅助的作用。这在一定程度上缓解了学生人数众多、教师工作量剧增的压力,提高了学生学习的积极性。基于PBL的研究性教学模式示意图如图1所示。
图1 基于PBL的研究性教学模式示意图
教学效果 为检验C语言程序设计教学效果,在任课的两个班级中(外包111班、外包112班)抽取了32人进行分组,每组8人,并对这些学生采用基于PBL的研究性教学模式,授课时间为2013年下学期。具体的实施过程分为三个阶段。
1)开始阶段,分析学生的学习特征(根据不同班级往年的平均成绩),进行教学准备,按授课顺序选择相应的课题,并对课题进行集中讲解。
2)开展阶段,鼓励学生利用各种资源进行课题探索,并及时解答学生反馈的实际问题。
3)评估阶段,对学习效果进行评价打分。其中教学实施阶段采取由课堂学习、课后学习、定期讨论等多环节所组成的立体化方式开展学习活动。
学期结束后外包111班的平均成绩为70.4,外包112班的平均成绩为73.5。采用基于PBL的研究性教学模式的四组学生的成绩如表1所示。由表1可知,每个小组的平均成绩都大于所在班级的平均成绩,其中从外包111班抽取的第2组平均成绩比班级平均成绩高了5.2分,从外包112班抽取的第4组平均成绩比班级平均成绩高了5.6分。由此可见,在2013年任课的两个班级中实施基于PBL的研究性教学模式取得较好效果,不仅提高了平均成绩,而且上述32名学生的学习积极性有很大程度的提升。
表1 2013年下学期两个班级教学效果对比
以C语言程序设计为视角,结合目前PBL教学方法和研究性教学模式的成果,给出课程的PBL研究性教学模式示意图,对课程的PBL研究性教学进行深刻探讨,并根据两个班级学生的期末成绩进行方法验证。实验证明,基于PBL的研究性教学模式有助于提高学生的成绩和学习积极性,有利于培养学生的团队合作精神和创新精神。■
[1]夏锦文,程晓樵.研究性教学的理论内涵与实践要求[J].中国大学教育,2009(12):25-28.
[2]柴宝仁,等.对C语言程序设计课程研究性教学的探索与实践[J].教育与职业,2007(3):152-153.
[3]刘智运.论高校研究性教学与研究性学习的关系[J].中国大学教育,2006(2):24-27.
[4]朱桂琴.研究性教学及其基本范式[J].教育探索,2003(7):37-38.
[5]丁华.高职院校实施PBL教学模式的研究[J].中国大学教育,2010(7):38-39.
[6]范晓峰,等.网络环境下《C程序设计》课程PBL的探索[J].内蒙古师范大学学报:教育科学版,2010,3(23):141-143.
[7]孙炯宁,等.PBL教学模式在《C语言程序设计》教学改革中的应用和探讨[J].电脑知识与技术,2009,5(33):9373—9374.