基于“畅学编程”平台的低年级计算思维培养探究
2022-11-21姜琪
姜 琪
著名计算机科学家周以真教授提出,计算思维是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。[1]随着信息技术的迅速发展,“计算思维”正逐渐成为众多教育学者研究的重点。作为信息技术教师,如何将抽象的计算思维在课堂中呈现出来并在课堂教学中培养学生的计算思维能力至关重要。
“畅学编程”是为低年级学生定制的计算机在线编程课程,其教学内容符合基础教育的要求,可以系统化培养学生的计算思维。“畅学编程”一级课程相对简单易学,包含指令、算法、程序控制、调试、循环、创建故事等内容。通过学习对应的课程,学生可初步创建计算机程序,用编程语言创建动画故事、开发交互式游戏并分享到网络学习平台。通过具体的程序模块搭建、程序调试和运行程序,学生的逻辑思维能力得到锻炼,信息素养得到进一步提升。
本文以“畅学编程”一级课程为例,通过课堂上真实的学习交流让思维可见,探索低年级高效的编程课堂,从而更好地培养低年级学生的计算思维能力,为后续学习编程课程打下了良好基础。
一、低年级计算思维培养路径
根据江苏省最新的信息技术课程改革通知,考虑到小学编程教学的基础特点,笔者所在学校将“畅学编程”一级课程加入二年级信息技术课程。二年级的学生思维正处于具体运算阶段,对图形化、模块化的编程课程更容易掌握。[2]
(一)“循环”闯关,自我挑战
“循环”课程的教学目标是熟练掌握“循环指令”,用以简化重复的程序动作;能够创建一个循环单一类型的单个或多个指令任务;学会运用组合动作循环指令搭建程序;通过重复简单的序列,创建艺术图形;在闯关的过程中培养团队意识、解决实际问题的能力;通过使用简单的图形和线条组合,提升对图形排列的逻辑思维能力。
在低年级的信息技术课堂中,如何让学生对编程语言有更深刻的认识很重要。单一的以闯关形式完成课堂任务对二年级的学生来说并不难,但无法深入培养计算思维能力。因此,笔者考虑将学生在课堂中的思考过程呈现出来,将思维可见化,从多维度引导学生,找到课程中解决问题的关键所在,生成更高效有趣的编程课堂。[3]
(二)初级探索,指令梳理
教师在教授第11课“江南·循环”之前,让学生通过“重复做一件事”的游戏环节,了解什么是“循环”。学生对“循环”的初步认识是,一次又一次地做某件事或者多次重复一个动作,比如“跳绳时需要重复跳的动作”,“上楼梯时重复抬高腿迈步的动作”等。回到“江南·循环”这一教学内容,学生将认识一个新的指令“循环”,它是循环去做某一件事的指令。当课程内容进到第一关卡,学生确定了小鱼和需要到达的荷叶位置后,使用方向指令完成闯关。第二关卡需要使用循环指令,学生学会确定小鱼移动的方向和重复的次数,就可以将循环指令模块插入“当运行时”的下方(数字代表指令重复的次数),再将方向指令模块插入循环指令右侧的凹槽处即可。学生通过对比多个单一方向的指令和循环指令的使用,确定了循环指令的作用——缩减烦琐的重复指令。
第一关和第二关是非常基础的内容,课堂上反馈闯关成功率达到100%,由此可以判断学生能轻松掌握使用循环指令来简化繁杂的单一方向指令。随着关卡的增加,学习内容逐渐变难,对学生的思维挑战也越来越大。以第四关、第五关、第七关的课程内容来进行大比拼,学生闯关的成功率逐渐降低,这时需要教师引导学生正确搭建程序。班级里总会有思维能力不错的学生,教师可以请闯关成功的学生做小老师,将“小秘诀”分享给大家。同时,教师要把学生的语言信息转化为可见的信息呈现给其他学生,也就是说把学生的思维方式通过指示箭头呈现在黑板上,使每个学生都清晰地认识小鱼到达荷叶的路程,这也会加深对程序设计的理解。
(三)高阶提升,技能递进
在第11课“江南·循环”课程内容的基础上,第12课“松鼠·循环”这一课增加了新的动作指令(取得和种植),增添了编程课的趣味性。
在“松鼠·循环”这一课的学习中,许多学生没有到达指定的位置就开始“取得松果”和“种植松树”,导致在运行程序的时候报错,那么教师需要适时引导学生明确方向指令的数量。经过第一关和第二关的基础闯关练习,学生能够很快掌握这一课的基础知识,能够自行观察取得松果和种植松树的数量,并按照闯关要求使用循环指令来完成任务。
经过练习,学生对这一课的内容已经不再陌生,可以放手自主探究练习。教师将准备好的教学微视频分发到学生电脑,为学生提供相关的学习支持服务,以帮助有需要的学生进行有选择性的课堂探究。由循环的“移动指令”和循环的“动作指令”相结合的循环指令是第一次学习。组合动作的循环简化了复杂的指令,学生要在程序设计和程序调试的过程中学会动脑筋。
(四)创意无限,自我实现
通过第11课和第12课的学习,学生对程序设计里的“循环”有了更深刻的认识。第13课“小画家·循环”是对前两节课的拓展练习,本节课结合了编程的逻辑性与艺术的创造性,使学生在学习编程的同时插上艺术的翅膀,开启自由想象,进行个性化创作,从而把编程的思维运用到艺术、数学甚至生活的各个方面。
二、对培养策略的反思
(一)课堂中有方向地渗透问题意识,可以提高学生求知欲
培养学生思维的灵活性是信息技术学科的重要目标之一。由江苏省最新的信息技术课程改革可见,信息技术课程从一、二年级开始试点教学,低年级开展编程课也是为后面的学科学习做铺垫。引导低年级学生掌握思考方式,能有效增强课堂的趣味性,从而提高教学效率。
(二)多角度引导学生发现并解决问题,可以提高学生的参与度
在“畅学编程”循环课里,相同的课堂知识以不同的闯关形式展开,更有利于培养学生思维的多样性和变通性。[4]通过3节课的学习,学生不断变换思维,积极讨论和交流,勇于挑战和探索,在新的关卡中通过模块搭建感受循环指令的实用性,在创意中闪现思维的火花,锻炼逻辑思维,提升信息素养。
(三)分层次自主探究学习,有助于培养学生的抽象能力
培养低年级学生的计算思维要循序渐进。对课堂中遇到的实际问题需要进行交流讨论,给学生提供不同的学习支持服务,让学生思考如何在满足条件要求的情况下,以最优的程序设计完成闯关任务。比如在“江南·循环”这一课,“小鱼找荷叶”的闯关任务步步升级,提高了学生对编程课的兴趣,也提高了课堂的教学质量。
(四)思维可见化,有利于培养计算思维
“学而不思则罔。”创新来源于不断的思考。教师在教学中要让学生养成思考的好习惯,[5]在编程课中通过问题分析启发学生的高阶计算思维,培养学生的拆分思维和完整思维。那么,如何进行问题分析呢?学生的思考过程尤为重要。笔者认为,如果把学生的思考过程展现出来供大家探究,对促进学生计算思维的发展将大有裨益。比如在“小画家·循环”课程学习中,学生通过绘画将思考过程展现在纸上,往往会更好地体现思考动态,激发创新思维。