幼儿Scratch

带孩子玩Scratch编程:学龄前趣味程序(1)

去年写过几篇关于数学和编程启蒙的“系列”,可是拿自己家孩子做试验,效果并不理想。究其原因,主要是知识介绍得太多,例程复杂枯燥,缺少吸引小朋友注意力的要素,失败也就在所难免。

今年痛定思痛,决定还是要“以人为本”,把内容转向让小孩子兴奋的题材,又严格控制例程的长度和复杂性,让5岁左右的孩子能够在5-10分钟之内完成搭建,见到运行效果。从这几天儿子的反应来看,果然引起了他浓厚的兴趣。

另一方面变化是,由于孩子妈妈规定了看电脑屏幕不得超过 30分钟,这条“粗暴”要求意外地起到了规范我们“课堂结构”的作用。让我更加注重分配好操作时间,一般是提前给孩子描述出今天程序的运行效果,然后在上机的第一个 10分钟,引导他挑选(甚至主要是从网上搜索下载)他喜欢的主角和背景图片素材,这样能激发他对于最终效果的期待;第二个 10分钟,监督他按照事先打印或手绘好的例程单子,在 scratch 中完成程序搭建;第三个 10分钟给他尽情运行,以及做些小破坏找乐子;关上电脑之后,再对照例程单子,讲解几个语句的作用和含义。这样一堂 40分钟的课程,即满足了妈妈的“龟腚”,又让他觉得饶有趣味,简直具备了商业化授课的形制。

下面,就把这几天带孩子做过的例程贴出来,供感兴趣的网友参考。

(0) Scratch 入门

Scratch 官方地址:https://scratch.mit.edu/

Scratch 是 MIT 大学开发的一款儿童趣味编程界面,主要面向 8-16 岁的青少年。Scratch 程序完全采用“拼积木”的方式搭建,图形界面简单友好,功能却十分丰富,甚至有强大的传感器和机器人(LEGO)接口,是理想的科技启蒙“玩具”。

目前,Scratch 的运行平台有网页版、PC 版、Mac 版、Android 版等多种选择,作者还是倾向于推荐 PC 版。因为很多时候我们还是会面临键入数字、自己编辑素材等情况,传统的笔记本电脑在这方面比平板电脑反而更简便。PC版的缺点是需要小孩子掌握鼠标或触摸板的精细操作,不过经实践,这对于5岁的孩子来说并不是什么难事。

PC版下载的链接在官网页面下方,目前最新为 3.0 版:
https://scratch.mit.edu/download

PC 3.0版界面如下图:

Scratch编程界面

为了后边叙述清楚,上图把界面的几个部分进行了标注:

界面切换活页卡:主要是在代码界面、造型编辑界面、声音制作界面之间切换。
程序运行窗口:程序的运行效果将在那里显示,窗口上方有绿旗子按钮和红色中止符按钮,相当于“启动”和“中止”命令。
角色浏览和属性窗口:程序中出现的所有对象,也就是卡通“角色”,在这个浏览窗口中,可以进行选择、修改属性、删除、添加。
舞台背景一览:简单地理解,可以看成切换程序的背景图像;其实舞台中还可以添加与具体角色无关的通用音频、通用代码。

代码界面是最常用的区域,有:
分类栏:将积木进行了分组,包括运动、外观、声音、事件、控制、侦测、运算、变量、自制积木等默认组,还能添加附加组,如常用的“画笔”、“语音”等。
积木箱:显示了可用的积木块,程序就是用这些积木拼接而成。
代码区:是主要的编码窗口——将积木从积木箱拖拽到代码区,并进行拼接、设置部分参数。注意每一个角色有自己的“代码空间”,在角色浏览器(或运行窗口)中点选切换正在编辑的角色,或者点选切换正在编辑的舞台,代码区的代码也会相应切换。在遇到这种情况时,需要跟孩子进行解释。每段代码都有作用的对象(角色或舞台),代码区的右上角会提示当前代码作用的对象。

上述内容便是正式开始前,对 Scratch 最基础的介绍。

(1) 土豆地雷炸僵尸

儿子最近非常迷恋经典游戏 Plants vs. Zombies,包括看的《科学漫画》,也都是植物大战僵尸题材。因此,想要把他吸引到编程上,最好的方法当然也是选取 PvZ 中的角色。

程序目标描述

我们这个程序,是让玩家把土豆地雷拖拽到屏幕上的一个位置,然后点击绿旗子,僵尸就会从屏幕右侧随机(竖向)出现,并快速向左移动;如果碰到了土豆地雷,则炸成黑色,并发出爆炸声;如果没碰到土豆地雷,则发出“吃脑子”的惨叫声。

素材准备

为了避免版权问题,这里不提供角色素材的下载,但是网友可以自行前往下列网站,下载喜欢的 PNG 素材到电脑中。

https://plantsvszombies.fandom.com/wiki/Main_Page

当然,也可以根据自己孩子的喜好,下载其他卡通素材。其实素材是不影响程序的逻辑的,但挑选喜欢的卡通人物,可以让孩子的快乐指数成倍增加。

注意下载的素材最好是带透明度的 PNG 文件,如果没有此类素材,可能需要在 Scratch 导入后,由家长帮助擦除素材的不透明背景。

搭建场景

辅导孩子把下载好的素材,添加为 Scratch 角色:

Scratch土豆地雷炸僵尸

方法是:将鼠标移动到添加角色按钮上,再点击弹出的“上传角色”项,把土豆地雷(PotatoMineHD)、铁桶僵尸(Buckethead Zombie)的图片上传。

舞台背景我们选择了一个简单的波纹背景(在 Scratch 自带的图库中)。

代码搭建

点击“僵尸”角色,引导孩子搭建以下程序:

Scratch土豆地雷炸僵尸

整个程序由 12块积木构成,包含了一些嵌套和数字键入、下拉选择,有一定挑战,孩子很难全部独立完成。但为了实现有意思的效果,值得付出这种复杂性的代价,家长可以在一旁进行操作指导。特别是引导孩子根据颜色,在对应的分组中,寻找准确的积木(之前可能忘记交待一个条件,孩子的识字量应在 800-1000左右,约相当于小学一二年级水平,或者有相应的英语基础,鉴于当前的早期教育理念,5-6岁小孩应当有相当部分可以满足)。

需要提示的一点是,“碰到 (PotatoMineHD)”积木,是由“碰到 (鼠标指针)”积木(在“侦测”组里)通过下拉箭头改变而来的。PotatoMineHD 是本例程中土豆地雷角色的名称(来自于素材文件的文件名),读者的素材可有其他名称。

类似的,“将[亮度]特效设定为(-100)”积木,是由“将[颜色]特效设定为(0)”积木改变而来的,它们在“外观”分组中 。

播放声音积木中的 Bonk、Alien Creak1,是选择的 Scratch 自带音效。读者可以自行录制——方法是单击积木上的下拉键头,然后点击“录制…”,和孩子一起配一些搞笑的音效。录制后,记得在代码界面中,再次通过下拉键头选择需要的 recording。

运行

截图略。家长还可以引导孩子每次改动程序的一个积木,或一个参数,看看会出现什么意想不到的错误效果。

讲解

作为第一个程序,其实不需要太多讲解,回忆小时候学 BASIC 时,大多数趣味程序也让人搞不明白是怎么回事。何况 Scratch 语句的自明性比 BASIC 又强了很多,孩子慢慢地就会在趣味中理解,每一个积木就是一条指令,有的指令负责控制运动,有的负责控制声音,有的是程序主要逻辑的控制,它们适当地连在一起,就组成了具有功能的程序。

发表评论

电子邮件地址不会被公开。