【摘要】分析传统实验教学模式在计算机程序设计类课程教学中缺陷和不足的基础上,开展开放式的实验教学,以培养学生的创新能力和提高学生的程序设计能力。
【关键词】开放式实验教学 程序设计 创新能力
【基金项目】荆楚理工學院课题基金《基于开放式实验教学提高学生程序设计能力的研究》(基金号:JX201213)。
【中图分类号】G64 【文献标识码】A 【文章编号】2095-3089(2014)12-0226-02
开放式实验教学是从培养学生创新思维和创新意识出发,结合理论课针对某项或某个领域有关的问题,采用科学思维方法,大胆设计,进行开放式教学的一种模式。是培养学生实践动手能力和创新精神、实现高校人才培养目标的有效途径 ,是以学生为中心的、培养学生的综合能力和创新能力、富有个性的实验教学模式[1-2]。实施开放性实验教学,对于学生巩固所学知识,培养独立工作能力及养成严肃认真的科学作风等方面具有明显的优越性,有利于完成教学目标,培养出适应社会需求的具有创新素质的应用型人才。
1.程序设计类课程实验教学现状
传统的实验教学模式是以教师为中心,教师根据教学大纲和实验大纲的要求布置实验任务,学生被动的执行和完成。对于计算机的程序设计类课程,如C,C++,JAVA等,这种传统的实验教学模式所导致的直接影响就是学生缺乏实际动手能力,与理论学习脱节。实验教学课普遍存在学生目标不明确,学生对于实验课程缺乏兴趣,机械的完成形式化的实验任务,缺乏创造性思维,不能从实质上提高程序设计能力。指导老师往往只能针对个别有兴趣学生进行辅导,整体的实验教学效果难以得到提升。在多年从事程序设计类课程的实验教学过程中,传统的实验教学模式所带来的问题具体体现在以下三个方面。
⑴实验教学形式化,学生思维僵化
在理论课程进行到一定阶段后都会有实验课程安排,一般按照教材配套的实验任务进行讲解演示,然后预留时间让学生完成指定实验任务。配套的实验任务设计都能很好的对阶段性理论知识进行验证和实践,这是这类典型实验教学任务的优点。但这样很容易导致实验教学的形式化,教师按照实验步骤演示出正确的结果,学生则按部就班的去完成同样的实验。学生思维僵化,经常出现按照教材事例、教师演示示例丝毫不差的做能得出应该的结果,稍有偏差出现问题后就束手无策,要么按部就班的从头来过,要么直接问指导教师,很少会主动思考为什么出问题,本次实验的目的是什么。
⑵实验过程被动,实验结果唯一
传统的实验教学模式下,学生在整个实验过程中始终处于被动的地位,被动的接受,被动的执行,学生成了机械操作者,只是对着实验指导书重复一遍,就可得出很好的实验结果,常常是实验做完了,报告交了,一点印象都没有,这还是学习态度比较积极认真的学生。一部分惰性比较大的学生则是将同学做好的实验报告一抄了事,反正实验结果都是一样的。在我批阅统计的2012-2013一学年C语言程序设计和C++程序设计两门课程涉及六个班级(班级人数在40人左右)的数十次实验报告中,上交实验报告的相似雷同率达60-70%,真的是成了学生口中的“一人做完,全班不愁”。
⑶设计与实际脱节,程序与问题脱节
设计好的实验任务往往只侧重于验证对应的理论知识点,甚至是为了验证而设计的实验任务。这样的实验任务学生完成消化的再好,却很难联系到实际,所编写的程序能够正确无误的运行,却很难解决问题。例如C语言程序设计课程中讲解循环时典型的累加和阶乘的计算。学生可以很轻松的编写出从1加到100,1000……的程序并且运行得到正确的结果。然而从加变到乘,同样的程序运行得到的结果却显然不是预期。溢出这个知识点显然学习过,数字位数的拆解也学习过。当碰到了与设计的实验结果不一样时,显然不是既定的程序能够完成的。这样的一些实际的问题显然按照设计好的实验任务是不会出现的,而一旦出现也是设计好的实验任务所无法解决的。
2.开放式实验教学改革
实验教学是高等学校教育教学的重要环节,对学生综合素质的培养和能力的提高起着至关重要的作用。教育部把开放式实验教学作为高校本科教学水平评估指标体系中一个重要观测点。
开放式实验教学是一种有别于传统教学模式的新型教革项目,是实验方式的创新, 是培养学生实践动手能力和创新精神、实现高校人才培养目标的有效途径。施开放性实验教学,对于学生巩固所学知识,培养独立工作能力及养成严肃认真的科学作风等方面具有明显的优越性,有利于完成教学目标,培养出适应于社会需求的具有创新素质的应用型人才。
在2013-2014学年的VC程序设计课程中,按照开放式实验教学理念的指导,本着以学生为主体的思想,在课程的实验教学环节中改变学生只是实验操作者的传统实验教学模式,建立开放性实验教学模式,用开放性教学思想指导实验教学全过程。经过对学生的问卷调查以及实验报告,课程设计的批阅统计可以看到开放式实验教学模式在实际教学中取得了良好的效果。(11级计算机科学与技术本科1-3班,1班58人,2班48人,3班45人,共计151人)
每一次的实验任务设计均只提出所需体现的理论知识点而不设定具体指标,完全由学生自由发挥,自主设计实现并提交相应的实验代码和报告。在没有固定套路的实验过程和统一的实验结果下,实验报告的相似,雷同率大幅下降。学习兴趣高,态度端正的学生可以充分发挥创新精神,大胆设计并就过程中出现的问题与指导老师探讨交流;部分惰性学生也因为没有统一结果的实验任务而不敢抄袭,在指导老师的引导和鼓励下进行相对简单的实验任务设计和实现。在课程设计环节(课程设计按5人一个小组以团队形式组建),学生设计并提交的课题未出现相同。这些直观的数据统计显示出开放式实验教学模式对实验课程环节的效果明显。
⑴实验教学开放化,学生自主创新
实验教学的开展不再只是教师的单纯演示讲解然后布置实验任务,而是结合理论课针对某项或某个领域有关的问题,在教师的引導下由学生自主设计实验任务,在实验设计过程中验证运用相关理论知识。这样能够充分发挥学生的创新意识,训练了学生的实验操作动手能力和创新能力,培养了学生初步掌握科学研究的思维方式和科研工作方法,为使其学会重视通过实验来解决问题,进行项目开发和程序设计打下了良好的基础。
⑵学生主导实验过程,实验结果多样化
从提出问题开始,到形成概念、解决问题为止,学生始终处于独立思考、积极探索的学习氛围,真正实现以学生为中心,以教师为引导的开放式实验模式。给学生发挥自身的创造性和能动性提供了广阔的空间,体现“发展个性、因材施教”的原则,富有个性的教育理念。这样可以充分发挥学生的主体作用,激发其主动参与的热情、变“被动学习”为“主动学习”。可以促使学生形成对化学学习的持久兴趣,同时又可激发学生的求知欲。
⑶问题驱动设计,程序贴近实际应用
计算机的程序设计类课程的一个主要目的是训练学生理解掌握计算机的逻辑设计,通过程序设计控制计算机来解决各类实际问题。这就要求学生在学习过程中要以问题驱动设计,做到从问题中来,到问题中去。驱使学生不断学习的动力应该是对问题抽丝剥茧,逐步解决所得到的成就感,而不是教师填鸭式的灌输。程序设计要贴近实际生活应用,而不是课堂上的理想构建环境。当有学生设计的ATM模拟系统可以输入指定金额时,我就会问学生当你在银行的ATM取款时是否能够输入金额,如果不能使为什么,能不能实现输入金额……当有学生模拟火车购票系统时,我就会问学生一次可以买几张,如何判断;当出现同时多窗口购票时谁先谁后……
3.总结
在高等学校,实验教学由传统模式向开放式模式转化是一个必然的趋势,是当前信息化社会对应用型人才培养提出的要求。计算机程序设计这类强调创造能力和实践能力的课程对开放式实验教学的需求更是迫不及待。当然,开放式实验教学的内涵远不止本文所阐述的这些。开放性教学思想应指导实验教学全过程,要在时间空间上,课堂内外,科研课题,联合项目等各个方面实行多种形式、相互衔接的开放模式。
参考文献:
[1]金正一.建设开放性实验室的思考与实践[J].实验室研究与探索,2007;26(1):124
[2]梁桂英,王春晓.开放实验教学提高学生创新能力[J].高师理科学刊,2007;27(1):91
[3]王兴邦.实验室开放的内涵与机制研究[J].实验室研究与探索,2009;28(5):11
作者简介:
余琨(1978.09-),男,汉族,湖北汉川人,硕士,讲师,研究方向为计算机网络安全。