例谈小学Scratch编程教学策略

2018-01-11 09:25华剑
中国信息技术教育 2018年24期
关键词:编程程序生活化

华剑

编程教学正在成为小学生的日常学习内容,这为信息技术课程带来了新的活力,但也迎来了新的挑战。Scratch编程是一门趣味性、操作性非常强的课程,但如果教师只是按照“教师演示—学生操作”的讲练结合模式进行教学,学生将会只是被动地吸收,无法主动去思考和探究,计算思维培养终将成为“空中楼阁”。因此,我结合自己多年的教学实践,总结出了小学Scratch编程教学的一些策略,在此结合实际案例进行阐释,供同行借鉴。

● 主题生活化,经历问题解决

小学Scratch编程教学中,若缺乏与生活紧密联系的主题,就难以激发出学生进行编程学习的内在动机。因此,教师在设计小学Scratch编程教学时,需要依据生活中具体的场景设计主题,通过项目式学习方式激发学生的学习热情与动力,使学生在解决问题的过程中获得成就感和满足感,引导学生在解决日常生活中的具体问题时,学会主动运用计算思维去思考解决问题的途径,从而发展学生有条理地思考与表达的能力。在课堂教学中,使用生活化的语言和生活化的场景设计,使教学过程贴近学生日常生活,把抽象的算法设计转化为形象的具体问题,培养学生学会用逻辑缜密的算法思维去思考、解决实际问题,从而提高学生的逻辑思维能力。生活化教学情境给课堂营造出轻松愉悦的氛围,压抑与紧张不再,师生、生生交流互动频频。教师在情境中适时地对学生进行引导与启发,激励学生主动探求新知识,主动构建知识链。

例如,某教师曾经设计过如下生活化情境。教师通过Scratch动画引入:小花是农村里的一个小姑娘,一天中午,小花的妈妈正在干活,为了招待家里来的客人,所以就由小花去鸡舍中捡取雞蛋。然后,教师让学生去体验如下游戏:淘气的母鸡总拿棒球充当鸡蛋,并且每次棒球进入碗中,都会砸坏鸡蛋,并且鸡蛋落地也会砸坏,学生需要在指定时间接住尽可能多的鸡蛋,鸡蛋落地或者接到棒球都会扣分。教师总结游戏的规则并提出任务要求:开发一款符合上述规则的游戏,游戏元素可以自由更换。通过引导,学生认识到这个游戏要解决的关键问题是如何让物体反复出现和运动。通过创设这种生活化的情境,建立起生活情景与教学内容的联系,让学生能够切身感受到相关知识,达到吸引学生注意力、激发学习兴趣的目的。

● 范例展示,任务分解细化

在小学Scratch编程教学中,教师不会直接让学生编写程序,而是经常会先使用范例程序让学生体验和分析,进而进行任务的分解和细化。范例设计是否有效,能够直接影响课堂教学的效果。因此,教师呈现范例时要特别注意其趣味性,只有范例有趣了,学生才能产生探究编程知识与技能的主动性。在分析范例的过程中,教师要重在引导学生逐渐形成解决问题的思路和方法。在此过程中,学生通过对对象进行程序设计思想,关注程序中的“对象”,以及与“对象”有关的“属性”“行为”,为接下来分“对象”进行编程做好铺垫。同时,教师要让学生充分体会编程中的“分解”概念。面对一个复杂的实例,学生常常无从下手,看似简单却不知如何开始入手编写脚本。学会分解,学生则能够很好地理清思绪。

例如,教师展示如下制作好的动画范例。在智慧城堡的一个房间里,传来奇怪的声音,书桌边上有顶时隐时现的魔法帽子,小猫在房间里自由行走。当小猫碰到闪动的魔法帽时,魔法帽对小猫说:“你已经拥有了画笔的魔力!”而后背景切换到另一个场景,同时魔法帽消失。此时,小猫自由行走时可画出图形。学生在教师的指导下,通过小组讨论找出程序中的角色,分析出各角色对应的事件,用自己的语言描述出角色的动画过程。

再如,教师展示打地鼠游戏,引出问题情境。学生尝试着玩一玩游戏,并进行观察与理解,然后填写学习单。学生重点需要关注:这个游戏都有哪些角色?什么功能?怎么玩?要求学生观察项目角色和场景,并了解项目完成后的执行效果。学生小组讨论以下几个问题:游戏中有几个角色?(两个:地鼠和锤子)锤子是怎么移动的?有什么变化?引导学生回忆:锤子随着鼠标移动,当按下鼠标的时候,切换到造型锤子落下,等待一定的时间后,再次回到锤子举起。

● 搭建程序,可视化表示

小学Scratch教学中,最为重要的是体现学生的计算思维,而不仅仅是学习代码的编写。怎样在编程教学中提升学生的思维品质呢?我主要采用思维可视化的教学方式。思维可视化可以有效帮助学生挖掘和呈现编程背后的内在关系和思考过程等。在小学Scratch编程教学中,教师可以引导学生观察和思考Scratch舞台中不同角色的关系和变化过程。学生通过思考可以将所思所想记录下来,并且理顺相互之间的逻辑关系。教师可以引导学生画出Scratch程序的流程图。学生根据流程图,到脚本编写区,找到相应的模块指令,对不同的角色开始编写不同的脚本。教师要从问题入手,有序、有针对性地引导学生分析、思考,在此基础上引导学生尝试形成解决问题的思路流程,分析思考用自己的语言解决问题的方法步骤,用“图示”表示出人物的动画过程。学生通过利用“图示”分析角色的行为步骤,用Scratch逐步将算法转换为程序代码,培养了学生的算法思维。通过前面的各种可视化方法,然后再编写程序,思维就清晰多了。

例如,学生可以画出下图所示的流程图。

● 程序调试,纠错中成长

任何程序都不是很容易地一次性就能够成功,而是需要经过反复调试程序。恰恰通过程序调试,让学生在调试中不断纠错,才能不断地在情感、知识与技能方面成长。通过学生自主调试修改,重复斟酌,不仅在知识与技能上得到了巩固提升,编程能力更能够得到锻炼。程序调试是Scratch编程教育中的重要组成部分,贯穿了Scratch的整个学习过程。学生在进行Scratch作品调试时,需要明晰自己所使用的每一个执行语句的作用,并且不断地熟悉整个程序设计的全部流程。特别是当学生遇到程序执行错误或不能执行时,就需要对程序进行纠错。纠错是小学Scratch编程教育的一个重要内容。纠错时,学生要学着像计算机一样思考问题,理解程序所对应的运行效果。缺陷任务能够提高学生的纠错能力,让学生在自我“摆弄”的过程中培养纠错能力。在程序编写实践过程中,学生对程序进行不断地调试、纠错和优化,能够培养学生的工程思维。

教学实践证明,教师只要勇于开拓脑筋,真正地从学生角度出发,采取有效的支架帮助学生进行程序设计和调试,就能够有效地开展Scratch编程教学。我们只有不断地改进课堂教学策略,提高学生的思考积极性,才能让学生攀登上“计算思维”的高峰。

猜你喜欢
编程程序生活化
初中数学生活化教学策略研究
玩游戏学编程,Blockly Games上手玩
给Windows添加程序快速切换栏
纺织机上诞生的编程
作文生活化教学指导策略
“则”与“择”:指向生活化学习的幼儿园数学活动实施的原则与选择
简化化学平衡移动教学程序探索
生活化美术教学的课程设置及实践应用
编程屋完成数百元万天使轮融资
学编程,先画画