初中程序设计教学中学生错误资源的再利用
2021-01-18吴敏
吴敏
程序设计对于初中生而言,是一门比较难理解、需要花时间的课程。在学习的过程中,学生往往会因为内容比较枯燥、上机时间短而错误百出,对程序设计的学习失去信心,甚至从一开始就产生畏惧心理,影响课堂学习效果。初中阶段的程序设计学习,主要难度在于熟悉程序设计的思想,为高中程序设计的学习打下扎实的基础。因此,程序设计教学中如何引导学生正视出现的错误、充分利用错误资源提高自己的学习效果,值得每一位信息技术老师深思。
一、正视错误、巧用工具,避免简单错误重复化
利用记事本文件,随时记录错误。在程序设计入门之初,学生所犯的错误多为语法或忘记声明变量等低级错误,而这些错误直接影响学生后期程序设计的深入学习。如果单纯地讲授语法知识会比较枯燥,且不利于学生记忆掌握,因此我们可以将语法知识渗透在编程过程中。对于调试中出现的语法错误,可以利用记事本文件拷贝下来,比如C++程序设计中,学生会经常出现缺少分号、括号不成对等错误。通过记事本文件的记录,学生会发现很多错误是一样的,对于那些经常出现的错误,可以把错误情况做成提醒,从而避免简单错误重复化。
在程序设计的各个阶段,学生犯的错误往往会不一样。可以让学生小组讨论某一阶段主要面临的重难点问题,针对重点问题,强化练习,全班讨论,逐个击破。
二、巧用错误、加深体验,提升学生信息编程思维
1. 将学生的常见错误渗透在教学演示中,让学生学会纠错。在程序设计学习过程中,学生的错误很多是有共性的。教师在上课的过程中,要充分考虑学生可能犯的错误,将学生经常出现的错误渗透在教学演示过程中。比如,在编程过程中,经常会用到替身变量,但刚开始,学生往往会忘记替身变量的声明;教师可在教学过程有意地出错,让学生纠错,以加深学生对变量的理解;还有一些简单的容易忘记的语法错误,在演示过程中时不时地出现几次,可以让學生明白错误有时难以避免,对于错误,要积极地解决。
2. 体验错误带来的意想不到的价值,在编程中敢于“犯错”。在编程过程中,学生经常会出现意想不到的错误,由此带来意想不到的运行结果。这些错误产生的原因不是学生上课不认真听讲,而是学生真正去认真思考了但是思考的过程中可能有不全面的地方。这类错误是学生学习、教师教学过程中珍贵的学习资源。我们要善于发现此类错误并能及时地利用其开展延伸教学。比如,将此类问题设置成程序纠错题,让学生在纠错过程中学会读程序、分析算法,加深对算法的理解,体现错误的价值。
3. 以小组力量收集有价值的错误,建立错误共享资源库。程序设计除了需要学生逻辑思维严谨,还需要学生有大胆的实践创新思维。我们要鼓励学生正确对待编程过程中出现的错误,而不是把错误藏起来。因此,可以定期组织学生交流自己的错误记事本,在小组探讨的基础上提出一些有价值的思路,建立共享错误资源库。学生可以查看其他同学的错误情况,比对自己相似的错误,提醒自己避免错误重复化;对于自己还没有出现过的错误,思考一下其中的具体原因,采取应对措施,预防出现此类错误。
三、错中思辨,在错误中寻找正确、在正确中寻找错误
在错误中寻找正确,在正确中寻找错误,可以帮助学生错中思辨,建立强大的算法思维。编程过程中,写完程序代码编且程序可以顺利运行,但是运行结果全是错误的,这样的错误往往是由于算法出现了错误而导致的。虽然说运行结果不是起初的设想,但是也有可能是解决该问题的另一种方法,对于这种错误,我们可以鼓励学生进行小组探究,在讨论中找出错误的地方并进行问题的归纳,探究产生错误的原因,真正理解编程过程中的程序思想,对这种问题的探究有利于学生算法思维的培养。例如,在C++程序中打印三角形图案程序,行列变量i、j的变化可以产生不同的排版效果,教师可以鼓励学生大胆“犯错”,在错误中思辨,从而真正领会程序中各个变量的功能,融会贯通,实现从无意识地打印出某种图形到有目的地完成各种图形的打印。
在程序设计中,没有绝对的错误,也没有绝对的正确。我们要鼓励学生从错误中吸取经验,培养学生从正确中反思问题。程序设计过程中,算法并不是唯一的,不同的算法,运算效率相差悬殊,因此,面对看似正确的程序,我们要引导学生同题异构,可以通过设计运算次数变量分析程序的运行效率,借助小组探究,互相促进、提高。
总之,编程学习中的错误是难免的,但并不可怕,错误有时也是学生思维的火花,教师如果能够引导学生正确面对、有效利用,“错误”产生的思维火花也可以在算法思维的培养中“燎原”。
(作者单位:江苏省苏州市吴江区苏州湾实验初级中学)
责任编辑:王 燕