面向计算思维培养的小学Scratch编程教学策略研究

2022-04-19 13:12周莹
考试周刊 2022年4期
关键词:模仿学科融合计算思维

周莹

摘 要: 作为一名小学信息技术教师,笔者深感Scratch编程的魅力所在。Scratch编程教学是普遍认可的小学计算思维培养的重要抓手和落脚点。文章从Scratch编程教学与生活融合、与学科融合两个方面介绍了教学方法和初步经验,并初步总结了笔者探究—模仿—探究的教学方法。通过这些方法的使用,教师可以更好地引导孩子学习Scratch编程,培养计算思维。

关键词: Scratch编程;计算思维;生活融合;学科融合;探究—模仿—探究教学法

中图分类号: TP393    文献标识码: A    文章编号: 1673-8918(2022)04-0017-04

《江苏省义务教育信息技术课程纲要(2017年修订)》(以下简称《纲要》)指出信息技术课程的总目标是培养学生的信息素养,信息技术学科的核心素养包括信息意识、计算思维、数字化学习与创新和信息社会责任等方面。

近年来,计算思维培养受到普遍重视,“算法与程序设计”作为计算思维的重要体现,是信息技术课程的核心模块之一。对于小学生来说,Scratch是目前应用最广泛的可视化编程软件。Scratch编程学习不需要学生记忆和理解晦涩难懂的代码,学生只需要拖拽现成的积木化控件进行组合即可完成编程。学生关注的是分析问题,把问题转化为积木化控件来解决问题,避免编写复杂的程序语言,这使编程学习变得更加轻松有趣。笔者在教学实践中,总结了探索—模仿—探索的教学方法,学生在问题驱动下,通过自主探索初步了解Scratch编程软件的操作方法,培养学习兴趣,然后通过教师流程图引导下的大量模仿操作,理清思路,提高计算思维,最后实现自主创作。

Scratch等积木式编程软件作为中小学生计算思维培养的重要抓手,进入了小学信息计算必修内容。如何让Scratch编程学习真正提高学生的计算思维,体现信息技术学习的实践性,正如《纲要》中所说:“要将信息技术和其他学科融合起来,面向学生的生活世界,帮助学生对世界的完整认识。”

一、 Scratch编程和学科融合

(一)Scratch编程与数学学科融合

数学是思维的体操,Scratch编程软件中的“数据”“侦测”“数据和逻辑运算模块”等模块中的控件和数学学科知识高度相关,在计算思维培养方面是一致的。由此,教师可以在教学中将两个学科进行融合,利用Scratch编程的工具性和实践性特征,为数学教学提供实践工具,或者利用数学知识为信息技术教学提供助力。

例如,在《画正多边形》一课中,教师先让学生画正三角形、正方形(正四边形)、正六边形和正八边形。通过四个图形的绘制,教师把控件的相关信息进行数学化归纳和汇总,然后引导学生发现旋转次数和旋转角度之间的关系,从而推导出正多边形画法的公式(如表1),这是数学式思维对Scratch编程教学的帮助,同时Scratch编程对计算思维的培养也起到了积极助推作用。

学生在掌握了正多边形绘制方法之后,可以轻松绘制出正七边形、正十一边形、正二十五边形等利用纸笔很难计算和绘制的图形,不能整除的数字,比如360/7,利用控件 就可以直接表示,计算机会帮助我们快速计算。同时学生通过学多边形的绘制,发现正多边形的边数越多,图形越接近于圆形,这对于学生理解数学中圆形相关知识起到很大帮助,Scratch编程将抽象的知识转化为直观的画面,实现了数学模型,更提高了学生的计算思维。

数学和Scratch编程融合帮助学生更好地学习正多边形和圆形的知识,也教会学生解决问题的方法和策略。

(二)Scratch编程和语文学科融合

Scratch编程的第一课教学时,教师常常把Scratch软件的界面当作一个“剧场”来介绍,“小猫”是主演,“舞台区”是演员表演的场地,“角色区”是演员休息区,“背景”相当于幕布,“脚本”相当于剧本,用Scratch编程软件编写脚本,就好比是导演编排一部舞台剧。把Scratch编程教学和舞台剧编排相联系,给脚本相应的情境,让每个控件的出现都和剧情紧密相关,这样学生不仅记得牢,思维也得到了训练,Scratch编程和语文学科有着不可分割的联系。

Scratch编程编排舞台剧,首先导演要构思好分镜头脚本,将所需要的角色和背景设置好之后,再利用广播控件按照故事发展的顺序将分镜头脚本进行串联。比如,学生在Scratch编程软件编排《龟兔赛跑》故事时,需要自己绘制或者网络搜索乌龟和兔子的角色图片,每个角色要符合人物特征,让学生理解写作中人物外貌描写的写法;每个场景的背景图,会让学生理解图文并茂的重要性;每个场景编排结束后,用“广播消息并等待”和“当接收到消息……”控件把各个场景串联。

学生在编排舞台剧的同时,要学会先在头脑中思考每个角色语言、动作以及故事情节发展顺序和因果关系,这种思考是思维导图式的雏形,不但提升了学生计算思维,激发了创作灵感,也提升了学生自主探索能力。

(三)Scratch编程和美术学科融合

Scratch編程的过程中,常常需要“绘制新角色”和“绘制新背景”,绘制的界面和电脑自带的“画图”软件类似,是数字化美术的一部分。“中心点”的选择、“上下翻转”“左右翻转”的使用,对于程序的测试效果影响巨大,很多程序测试无法完成效果,都是由于中心点的选择有误造成的,学生理解中心点对程序的影响和对学生的思维训练有很大帮助。

另外,Scratch中的“画笔”模块,结合其他积木的使用,可以绘制出图形,模拟绘图工具,也是数字化美术的一部分。例如,《画城堡》一课中,学生利用画笔工具完成多边形的绘制,用多边形组成了画城堡的任务,而且还发挥自己的想象,装饰自己的城堡,有的同学设计出彩色城堡,有的同学在城堡外种上草坪,有的同学在城堡外设计了花园,还有的同学让城堡上空燃放起绚丽的烟花(如图1)。教师把学生的创意进行了梳理和归纳,发现学生用Scratch编程这种数字化的方法来美化图形,有的学生用颜色美化城堡、有的学生用组合图形美化。学生在构建美的同时,会先在大脑中进行构图,这种构图就是计算思维的训练。

(四)Scratch编程和音乐学科融合

Scratch编程中的“声音”控件区里,有很多数字化音乐的实现工具。利用Scratch的软件中可模拟多种乐器,进行乐曲的脚本编写,为剧情设置合适的背景音乐,增加了编程的乐趣,大大激发学生的学习积极性。比如,在《动物表演》一课中,每个动物的出场时都可以设置相应的出场音乐,而且小猴也可以利用弹奏音符52,0.5拍;弹奏音符52,0.5拍;弹奏音符53,1拍;弹奏音符52,1拍;弹奏音符57,1拍;弹奏音符53,2拍,这样的设置,演奏生日快乐歌,声音的融入让Scratch编程编排的原本无声舞台剧变得多元且精彩纷呈。

(五)Scratch编程和科学学科融合

Scratch编程中的变量、顺序、条件、循环等基本的程序原理也普遍存在于科学现象中。利用Scratch编程创作呈现科学现象和逻辑过程,加深学生对科学概念内容的理解,同时,在设计过程中培养训练学生的计算思维能力。以《Scratch模拟自然界中水循环》为例,教师带领学生分析发现:太阳、水蒸气、乌云、雨、彩虹的出现都与空气湿度密切相关,新建湿度这个变量,通过变量的循环变化实现湿度从低到高,再从高到低的循环变化,这个变化过程决定着天气的变化,所以程序不是编写在某个角色里,而是背景里。通过湿度的变化,太阳、水蒸气、乌云、雨发生改变,编程过程帮助学生理清了天气变化和湿度的关系。这样的编程模式同样可以推广到日月星辰随着一天时间的变化而变化等自然现象的模拟仿真。学生摸着“一个变量”的藤,摸到了自然现象之间联系的“瓜”。

二、 Scratch编程和生活融合

Scratch编程和生活是息息相关的,舞台区好比是生活的缩影,为了让实现想要的功能,需要把控件进行组合或者拆分,就像小朋友“玩积木”“过家家”。比如,综合课《画城堡》教学时,教学内容多,学习难度大,学生要学会分析图形,将复杂图形分解成简单图形,并把简单图形定义成积木块,在每个简单图形的起始位置通过调用积木块组合成复杂图形。当需要使用连续的积木块时可以用积木块简化,让学生感受到模块化程序设计的优势。第一次上课后,笔者找了十个学生,这十个当中有画出城堡的学生,有城堡画出一半的学生,有六个积木还没有定义好的学生。和学生的访谈中,笔者发现学生根本没有理解为什么要尽心定义,定义耽误了很多时间。学生的问题和建议给了笔者修改教学设计的方向和动力,笔者知道怎样把不知道去哪儿的时间找回来。晚上回到家,笔者找出女儿的磁力片积木,用一些基本图形拼出了如图2一些形状,笔者想通过这些图形让学生理解什么是组合图形。为什么在Scratch中要用定义积木的方法来画组合图形。这一环节可以放在课前热身阶段。

对于需要用到的6个积木,连续6次的重复定义,确实花费了很多时间,对于这一问题,笔者设计了“半成品学件”这个“脚手架”,教师演示过定义积木的方法后,学生自己尝试定义一个积木,然后就可以给学生一个六个积木都定义好的“学件”,学生在“脚手架”的基础上进行调用积木画城堡,节省了5~10分钟的时间。定义测试过程中遇到问题,为了方便的测试,笔者又设计了“黑板擦”这个“小机关”。用空格键单独控制“清空”命令,简单方便,“黑板擦”学生非常容易理解。

调用积木块看似简单,但是实际操作中的问题非常多。学生发现积木总是“不听话”,不能随心所欲地搭出设想的形状。针对这种找不对开始拼图的“起始位置”和“方向”的问题,笔者设计了一个排队小游戏:6名学生面对班级同学站成一排,笔者站在他们中间,全班学生齐声说出6名学生在笔者的左边还是右边,接着笔者更换一个位置,全班说出每个学生在笔者的左边还是右边。最后,笔者向后转背对着班级同学,这时全班再齐声说出6名学生在笔者的左边还是右边,这时发现6名学生的位置都不相同。学生能够感受到调用积木块之前,起始“位置”和“方向”是一定需要弄清楚的。

三、 探究—模仿—探究进阶式循环的教学方法

建构主义学习理论强调教学中要以学生为主体,教师通过创设情境,引导学生以原有知识为起点,不断地发现问题和解决问题,最终形成自主学习和解决问题的能力。建构主义学习理论很好地契合了Scratch编程课程教学的特点,在Scratch教学中被大量应用。在教学实践中,笔者总结出“探究—模仿—探究”进阶式循环的教学方法,学生通过自主探究,大量模仿练习,再到半成品修改练习,最后可以自主创作,实现了由“蹒跚学步”到“独立奔跑”的转变。

Scratch作为一种可视化编程软件,和学生生活契合度较高。初始课学习时,学生学习兴趣浓厚,教师可以放手让学生自主探究。通过自主探究,大部分学生可以掌握软件的基本操作并编写出一些简单的脚本,这些成就感大大激发了学生的学习兴趣,为Scratch软件学习开了好头,探究式教学法在初始课学习中发挥了重要的作用。

随着学习的深入,如果教师一直放手让学生自主探究,学生的进步会变得缓慢,并且很少有优秀作品出现,学生只有自己仅有的一点发现不断重新放大,很难有更深入的探究和发现,学生的学习积极性也会受到打击。笔者通过教学实践发现,大量的“模仿练习”对学生学习起到积极助推作用。Scratch编程学习在凸显獨立探究的同时,离不开模仿练习。模仿练习是指,教师引导学生在流程图的带领下,进行大量的由“流程图模仿”到“半成品补充”的反复练习,从而帮助学生实现抽象问题和自主编程的能力,实现学生计算思维的提高。

(一)流程图引导

流程图是一种描述解决问题的方法、思路或者算法的工具,流程图代表了数据或者思维的流向。教师在Scratch编程教学时,需要先带领学生分析问题,提炼出解决问题的步骤,然后根据解决问题的步骤画出流程图,最后把脚本和流程图一一对应起来。

在流程图的带领下,学生经过反复模仿和练习,掌握分析问题和解决问题的方法。比如,在编写《猫捉老鼠》游戏中猫的脚本时,教师带领学生用语言分析猫的动作,小猫刚开始待在窝里(初始位置),游戏开始后,小猫面向鼠标移动,如果碰到障碍物就回到窝里再重新出发,如果碰到老鼠就获胜。随着语言的描述,教师展示一步步画出流程图,再让学生根据流程图拖拽积木,教师只需要提醒流程图中是通过“回路”来表现循环语句的,学生就可以理解并轻松地编写出程序了。(如图3)

(二)半成品补充

学生跟着流程图,模仿编写程序,经过一段时间的练习,可以掌握较简单程序的编写。要想把遇到的问题转化Scratch程序,还需要经过专项练习。一节课的时间想要编写一个完整程序,难度较大。为了提高学生练习效率,需要使用程序“半成品”这个“脚手架”。程序半成品帮助学生省去了素材导入、背景绘制等基础设置操作,可以让学生能够专心地针对性地训练部分关键程序的搭建。

比如,在学习变量应用时,教师给学生《猫捉老鼠》的半成品让学生直截了当地为半成品程序添加变量脚相关脚本(如图4),这样一节课时间下来,可以进行多个案例的练习,学生也可以根据自己的学习情况,选择不同难度系数的半成品进行练习,大大提高了练习效率。半成品练习的前提是需要教师提前进行较好的准备和构想,对教师课前准备要求较高。

学生通过基于流程图引导和半成品支撑的大量模仿练习,能够理解了各个控件、变量、函数的作用,并能够归纳出游戏、动画、故事这三类编程的特征。遇到问题,能够独立地探究,尝试把实际问题抽象成流程图模式的思考,进而搭建出相应的脚本,解決问题,这就实现了探究、模仿、探究的阶性循环。随着学生解决实际问题能力的提升,学生的计算思维能力也得到了提高。

四、 结语

记得一次Scratch编程课后,班上一位学生开心地告诉老师:“前面学习的‘WPS文字’和‘WPS演示’和Scratch编程有很大不同。‘WPS文字’是让我按软件的要求一步一步地去做,在Scratch编程中是让小猫按我的想法做事情。”学生的感受,直观地印证了Scratch编程对计算思维培养。

Scratch编程和各学科密不可分,与生活完美融合,但融合不是教育本身的目的。作为学习引导者的教师,应该清醒地认识到,融合教学只有在教师的创意引导下,学生不断进行探究—模仿—探究才能实现。教师要站在学生的立场上,创意地进行教学设计,让学生的计算思维得到训练,这样才能提升学生创新思维能力,形成精益求精的工匠精神。

参考文献:

[1]李艺,李美凤.《江苏省义务教育信息技术课程指导纲要(试行)》评介[J].中国信息技术教育,2008(8):9-12.

[2]朱云姣,刘睿,姜肇静.面向计算思维培养的Scratch生成性教学模式及实证研究[J].中小学电教,2021(6):8-11.

猜你喜欢
模仿学科融合计算思维
提高学生写作能力初探
基于项目的中学学科知识融合路径探析
网络空间安全学科人才培养模式与途径探索
智残儿童构音困难教学中的感悟
项目式模仿教学法在单片机教学中的应用
程序设计课程中计算思维和应用能力培养问题研究
如何提高学生的口语能力
民族高校C语言程序设计课程教学改革的研究
算法的案例教学探析
浅谈艺术专业学生计算思维能力的培养