【摘 要】计算思维作为信息科技学科的核心素养之一,一直是教学关注的重点。如何在教学中培养学生的计算思维呢?本文通过对教学案例的首次执教和两次迭代过程,反思总结出具备计算思维的学生特质和以培养学科思维方式为课堂主线的教学方式。
【关键词】计算思维;问题解决;课程迭代
【中图分类号】G434 【文献标志码】A
【论文编号】1671-7384(2024)08-072-02
案例背景
计算思维自提出到确定为信息科技学科核心素养,其重要性不言而喻。计算思维是“个体运用计算机科学领域的思想方法,在形成问题解决方案过程中产生的一系列思维活动”。执教图形化编程画笔模块时,笔者逐渐意识到:只练习编程技能,留下的仅是舞台区静止的线条,唯有在绘制动画的过程中,让学生思维最大限度地动起来,才能训练强有力的思维技能。笔者以对三届学生循环执教的“画城堡”一课为例,分析不同时期的三个版本设计,并分享探索计算思维教学过程中的一些思考和认识。
案例描述
1.0版本:以任务驱动的编程教学
首次执教“画城堡”一课,是接手信息科技教学工作的第一年。备这节课时,笔者的教学理念停留在理论学习时接触的教学方法和策略,第一版教学设计参考了教师教学用书,采用的是任务驱动法,让学生在图形化编程软件里用新建积木块的方法画出组合图形“城堡”。
本课按照“出示任务、分析任务、完成任务、拓展任务”的任务驱动思路组织教学,将模块化程序思想的学习融入到任务实现中。实际教学中,在调用积木块时,学生没有考虑画笔起始位置、方向带来的问题,课上大部分精力耗费在脚本测试上,并没有感受到模块化程序设计的优势。部分学生为了完成任务,直接使用画笔控件和坐标控件,画出城堡图,根本没有调用功能块。这样,本课的模块化思想只是在新知讲授时被提及,随后就不了了之。
2.0版本:关注模块化算法在问题解决中的应用
某次教研活动中,笔者做了题为“基于计算思维的图形化编程教学策略的探索”的交流讲座,案例反思过程中对这节课进行了迭代修改。计算思维是要培养学生用计算机科学领域的思想方法解决问题,链接本课就是让学生掌握脚本设计中模块化的方法。2.0版本教学设计重点在于让学生理解“积木块”这个基础概念,也就是对模块化算法的理解。
2.0版本的教学思路突出了对模块化思想有深入的理解,从“是什么?为什么?”到“如何定义?”形成全面的认识。考虑到1课时安排和本节课的难度,笔者在1.0版本上将原有的任务1进行了再分解,增设了一个新任务;结合1.0版本出现的问题,提供半成品支架,提高了任务达成度;小结时点明,定义积木块的过程就是模块化思想的体现;同时拓展总结部分,增加生活中模块化思想的应用,从而帮助学生理解算法的必要性。
经过两版教学修改后,学生任务完成率得到了提升。笔者和其他教师交流后,都感觉到以上两个版本设计,学生能达成从“学”到“用”,但是脱离本课情境,离实现从“用”到“建”、链接“模块化”思想来解决实际问题,还有一定的差距。
3.0版本:突出在问题解决过程中发展计算思维
随着《义务教育信息科技课程标准(2022年版)》(以下简称“新课标”)的颁布,学科核心素养导向的重要作用得到进一步强调。在学习研读新课标的过程中,笔者对本课进行了第二次迭代,聚焦如何设计问题和活动,发展学生计算思维。
计算思维通过“分解”“模式识别”“抽象”“算法设计”四个步骤来解决问题,是一种问题解决的思维过程,于是本课的课堂主线由任务线调整为思维线。笔者首先引导学生观察生活中的建筑,抽象现实中的建筑为几何图形,接着启发学生将城堡分解成更小的、易于拼装的“基本图形”,然后通过“定义”基本图形,将一组脚本模块化,来完成不同形状的固化和辨识,最后调用定义好的“新积木”,对脚本进行进一步优化。
3.0教学设计基于新课标倡导的真实性学习理念,创设真实情境,引导学生发现问题、提出问题,在已有知识基础上分析探究学科原理。为了突出对模块化思想本质的学习,笔者归纳小结了积木块在脚本设计中的作用,将其优势细化在每个活动任务中,从而解决难点,让学生直观感受到为什么要定义积木块。
案例反思
“画城堡”一课的三个版本设计,如图1所示,展示了笔者对“计算思维”从初识到探索的过程,当然,第三个版本还有很多需要改进的地方。迭代的过程是不断地突破原有思考框架定势的过程,也是笔者探索计算思维教学的过程,对于教什么、怎么教,笔者现阶段也有了自己的思考。
1.算法学习是计算思维培养的重要内容
根据新课标的描述,具备计算思维的学生应有以下特质:一是能对问题进行抽象、分解、建模,并通过设计算法形成解决方案;二是能尝试模拟、仿真、验证解决问题的过程,反思解决问题的方案,并将其迁移运用到解决其他问题中。前一条特质“通过算法形成解决方案”说明了算法的核心作用,后一条特质“解决问题的过程”“解决问题的算法”,都是算法的具体表现。由此可见,算法是计算思维的核心要素之一,在信息科技课程中,已将算法作为计算思维培养的重要内容。因此,考虑教什么时,教师可选择以计算机解决问题的经典算法为载体,先让学生认识并理解这些思想方法的本质,感知计算机解决问题的优势。针对小学生的认知特点,具体活动设计中借助流程图、学习单等支架帮助他们梳理问题解决的过程,以显性化的方式呈现思维过程,加深学生对算法步骤的理解。
2.以培养学科思维方式为课堂主线
计算思维作为一门学科的思维方式和思想方法,要让学生从无到有、再内化为一种自然的思维方式,去影响将来的生活,这是一个漫长的过程,需要学生在若干次情境中运用学科思维方式、已有知识和技能,不断分析、解决问题。因此,教师必须站在学科角度,理清学科的思维方式、看问题的视角以及解决问题的方法,并以培养这样的思维方式为主线,让学生经历完整的问题解决过程。小学阶段图形化编程的教学,不必要求每个算法问题都由学生编程实现,阅读理解、修改运行等都是有意义的体验,重在让学生充分参与到分析问题、模式识别、数据抽象、算法设计等环节中,理解如何将现实问题转化为计算模型加以解决。
再次打开图形化编程画笔模块,看着落笔到抬笔之间的这条线,学生逐渐明白:从现实世界到脚本,是有这样一条无比宽阔的道路任其驰骋,只要能够想到,就可以通过程序来实现。这个富有想象力和创作力的实践过程,就是思维无限延伸的过程。
编 辑:冯艳艳