张瑾
随着信息化的发展,问题的呈现方式变得越来越复杂,对人们解决问题的水平也提出了更高的要求。高中信息技术教师有必要加强对学生计算思维的培养,从而提升学生解决问题的能力。计算思维是指个体运用计算机科学领域的思想方法,在形成问题解决方案的过程中产生的一系列思维活动。python语言相较于其他的编程语言,有简单易学、拓展性强、内容丰富等特点,可以成为培养学生计算思维的重要载体。但在当前的高中信息技术教学中,还存在教学方式比较单一、忽视学生主体性等问题,导致学生虽然能够记住知识,却难以真正理解使用计算机科学解决问题的有效方法,影响了学生计算思维的养长。鉴于此,本文对高中信息技术教学中学生计算思维培养的现状进行分析,并以python编程教学为例,总结培养学生计算思维的对策以及教学反思,以供参考。
一、高中信息技术教学中计算思维培养的现状
计算思维的培养是学生学习中不可缺少的一部分,但从当前的高中信息技术课程教学现状来看,学生计算思维的培养并没有达到预期效果,影响信息技术课程价值的最大化实现,具体体现在以下几个方面。
(一)学生计算思维水平低
高中学生通过日常生活对信息技术的探索以及初中阶段的学习,大多已掌握基本的信息技术知识和应用技能,获得使用信息技术解决问题的实践基础。但很多学生是初次接触python编程,不具备编程基础;还有一些学生对编程存在误解,认为编程是一件很难的事情。在python编程学习中,学生在面对比较简单的问题时可以套用模板加以解决,但对于比较复杂的编程问题却难以找到科学的问题解决思路,缺乏计算思维。
(二)课程教学方式单一
在当前的高中信息技术教学中,多数教师仍然使用讲练结合的教学策略,先通过讲解将知识传递给学生,再让学生进行练习。学生实际上并没有得到独立解决问题的机会,只是在重复,难以在这样的编程学习中体会到编程带来的成就感,课堂参与程度比较低,不利于自身计算思维的发展。此外,部分学校会让学生学习C语言、VB语言等难度比较高的编程语言,导致学生计算思维发展受阻。因此,为了培养学生的计算思维,需要学校和教师采取更加多元化的教学策略,让学生获得使用信息技术解决实际问题的基础。
二、立足计算思维培养的高中信息技术教学对策
在高中信息技术教学中实现对学生计算思维的培养,需要教师重视问题解决的教学,对学生解决问题的过程进行细化,让学生学会在问题解决的过程中对问题进行拆解以及分析,形成良好的优化意识,学会用更好的方法解决问题。教师可以采取以下的策略实施python编程教学,让学生的思维逐渐得到优化,促进学生计算思维的养长。
(一)重视情境创设,激活思维体验
在培养学生使用信息技术解决问题的能力时,需避免让学生枯燥地思考,要讓学生可以联系实际生活需求探索解决问题的方法,更好地激活学生的思维潜能,让学生产生更加深度的思考。因此,教师要重视教学情境的创设,为学生提供生活背景,让学生针对实际问题进行分析,进而提高学生在课堂上的参与度。教师在情境创设时要充分考虑学生思维的最近发展区,联系学生的真实体验创设情境,更好地调动学生的探索兴趣。
以“数据与系统”单元教学为例,该单元授课结束后,笔者鉴于学生之前已经学习了很多python编程语言知识,在对学生所学内容进行分析整理后设置了一堂总结活动课,让学生在实践体验中灵活应用已掌握知识解决问题。在这堂活动课中,教学目标是让学生在综合解决问题的过程中巩固列表动态的增、删、改、查,函数参数传递、数据库的使用等知识,并让学生学会结合自己收集到的信息进行算法解决方案的设计,从而达到培养学生计算思维的目的。结合制定的教学目标,笔者在活动课导入环节对学生说道:“最近老师听说一位同事遇到困难了。学校让他统计班级里每个学生每科的考试成绩,但是班级里面学生数量很多,而且学科较多,他作为一名班主任感到这项工作比较吃力,我们能否帮助他更快更好地完成信息统计呢?”数据的收集和统计对学生来讲很熟悉,但学生还没有真正应用信息技术解决实际问题,这无疑为学生的问题解决打开新思路。笔者顺势告诉学生这次活动的主要目标:运用已经掌握的知识,制作“成绩统计系统”,让学生带着清晰的目标意识参与到知识探究中,有助于学生计算思维的养长。
(二)引导分析问题,制定实践计划
良好的计算思维不单指学生可以解决某一个问题,而是学生可以先根据问题的基本特征进行抽象处理,然后用形式化的方法描述问题,再运用模块化和系统化方法制定解决问题的方案,最后运用科学合理的算法验证方案的可行性,从而让学生在解决问题的过程中提高知识迁移的能力,促进学生的可持续性发展。因此,教师要注重给学生创造开放的学习空间,让学生可以认真地分析问题,尝试自行制定问题解决方案,让学生的问题解决更具有条理性,有效提升学生的计算思维水平。
在让学生制作“成绩统计系统”前,笔者将学生分成多个小组,让学生通过网络查询相关的资料,先了解“成绩统计系统”大体需要包含哪些功能,如登录系统、添加成绩、删除成绩、查找成绩、修改成绩等,再让学生结合掌握到的这些基本情况,制作一份简单的思维导图,梳理解决问题的思路和过程。笔者通过思维导图对学生查阅资料的情况进行了解和分析后,向学生电脑端传送了相关资料,让学生了解“登录模块代码”,从而帮助学生解决困惑,知道自己还没有掌握的知识点是如何进行编码设计,使学生可以更好地解决这次面对的问题。在学生结合教师提供的资料进行充分的自主学习之后,笔者再让学生结合自主学习的成果以及一开始制作出的思维导图,再次制定完整的工作流程,同时也明确小组内每个成员需要完成的任务。
(三)促进探究学习,分析解决方案
在学生制定较为完整的问题解决方案后,教师要及时引导学生根据制定好的方案设计合理的算法,提高学生使用信息技术解决问题的能力。高中学生的算法设计能力还不强,还有待教师为自己提供必要的帮助。因此,教师需帮助学生设计偏难功能模块的算法,并且引导学生将各个模块组合到一起,增强学生解题能力。
在制作“成绩统计系统”时,笔者让各个小组根据自己的实际需求整理算法,为后续实践操作做好准备。在这个过程中,笔者也注重引导学生对算法进行完善,如有的小组在设置“登录界面”时考虑不全面,没有考虑信息输入错误时的反馈,于是笔者引导学生回忆自己在登录其他系统时的情景,让学生思考如何增强用户的体验,并且根据学生的实际需求,指导学生完成相关算法的设计。
(四)加强实践训练,优化思维方式
实践应用是让学生的计算思维获得快速发展的重要环节。因此,教师要留有充足的时间让学生进行方案的落实,让学生在实践体验的过程中获得对用信息技术解决问题产生更深刻的认识。编程语言的实践和学生以往使用word、PPT等工具制作作品不同,学生容易暴露更多的问题,如有时程序即便可以运行,但也会显示页面错误,而学生却难以发现问题所在。此时教师要注重指导学生,加强和学生之间的交流合作,让学生认真地对自己设计的各个模块内部进行分析,思考模块之间的调用是否出现了问题,鼓励学生自己解决问题,从而让学生的计算思维得到进一步拓展和巩固,使学生享受编程的乐趣,认识到编程其实不难,促进学生对python语言的深入学习。
在制作“成绩统计系统”时,由于完整的系统编程量比较大,因此,笔者鼓励学生在这次的实践中只需要增加2-3科成绩、十名学生信息即可,并引导学生注重分工合作,合作完成模块的设计,同时也提醒学生在编程时增加注释,让最后的整合环节更加顺利。
(五)改进评价方式,启发再次创作
Python编程语言相对简单,但是对于学生来讲还是存在一定的困难。因此,在对学生所制系统进行评价时,教师要以激励性评价、发展性评价为主,保持学生参与编程学习的积极性,让学生可以形成更加强烈的探索兴趣。教师要注重引导学生关注自己的错误,让学生思考如何解决问题,增强学生的编程自信心,让学生乐于对自己的作品进行不断完善。
在学生完成制作“成绩统计系统”之后,笔者让各个小组展示自己小组的成果,并说一说自己所在小组在编程的过程中采取了怎样的做法、遇到了哪些困难,从而让学生可以在交流和倾听的过程中对如何使用python语言产生更加深刻的理解,提高学生学習的自信心和成就感。
三、立足计算思维培养的高中信息技术教学反思
在高中信息技术教学中培养学生的计算思维,是新课程标准下高中信息技术教学的主要目标,而在采取上述策略来对学生的计算思维进行培养时,教师也应关注以下问题。
(一)重视学生对抽象模型的确立
学生更加倾向于使用已学到的知识解决现实生活中遇到的问题。教师要重视生活情境的创设,让学生可以联系自己熟悉的情形在脑海中预设解决问题的程序,使学生建立抽象模型,从而促进学生计算思维的发展。相较于flash、word等方面的知识,编程语言知识比较枯燥和乏味,尤其是在学习比较复杂的功能模块时,很多学生会放弃思考,直接照搬照抄模块,导致自己制作的程序出现诸多问题。因此,教师要重视学生对抽象模型的确立,让学生的探索目标变得更加简洁、清晰,让学生在积极主动参与中获得计算思维上的强化。
(二)引导学生探索最优算法
编程实践可以让学生的计算思维获得更好的发展。在高中信息技术教学时,教师要为学生创造充足的编程机会,给学生提供各种各样的编程课题,改变学生机械重复教材方案的情况,让学生主动思考编程知识应用的各种情况,从而使学生的计算思维获得更好的发展。教师也要积极引导学生探索算法的优化方式,让学生思考如何使用更加简洁又充实的方式解决问题,改善高中学生在编程中容易出现的畏难状况,让学生的计算思维得以养成。
(三)注重评价中质和量的结合
在高中阶段开展信息技术课程,目的不仅仅是让学生掌握简单的信息技术知识和技能,更是为了提高学生的综合素质,让学生可以在未来更好地参与到信息化社会中。因此,在对学生进行评价时,教师要增强促进学生全面发展的意识,对学生学习的“质”和“量”进行综合性评价,为学生的成长创造更好的空间。比如,为了实现对学生计算思维的培养,教师可以设计评价量表,对学生的编程表现进行系统性评估,或直接使用语言的方式向学生传递激励并指出不足。总之,教师要使用更具有综合性的评价手段,让教学评价的信度和效度获得提高,实现以评促学、以评促教目标。
四、结语
综上所述,在高中信息技术教学中培养学生的计算思维,对促进学生的未来发展有积极的意义。高中生处在思维发展的关键时期,高中信息技术教师要充分发挥python教学特点,加强对学生计算思维的培养,提高学生思考问题、解决问题的能力,让学生可以更好地借助信息技术解决现实中的问题,让计算思维助推学生的可持续发展。