488929
post:488929

郭静期初论文:用Scratch构建儿童游戏网

  • 发布时间:2013-09-06 15:47
  • 作者:郭静
  • 点击量:

用Scratch构建儿童游戏网

——Scratch图形化程序语言在小学信息技术课堂中的应用

美国麻省理工学院媒体实验室的终身幼儿园小组开发了scratch图形化编程语言。Scratch图形化程序语言适用于教育8~16岁的儿童及青少年,可以用它创造属于你自己的故事、动画、游戏、音乐甚至是绘画,并且可以轻易的分享至网络。

Scratch是一个优秀的教学设计工具,在美国像哈佛、加州大学伯克利分校这样的世界名校都开设了scratch课程。Scratch图形化编程语言支持全中文环境的编写程序,使得学生学习程序设计的过程中没有语言的障碍。

一、游戏策略:Scratch图形化程序的优势

(1)操作简便:这套软件的最大优点是将程序设计变得很容易,只要使用简易的鼠标拖拉方式,将指令从程序指令区移进程序脚本区即可。

(2)不用担心语法错误:可以让使用者在不知不觉中,学习程序语言的概念,进而增加推理能力、掌握逻辑概念。

(3)所见即所得:Scratch程序设计的交互性特别强,在程序设计中只要用鼠标双击任何语句块,以及语句块的组合,都可以马上执行看执行效果。

让我们来看看Scratch软件的界面(图1),分为1、标题栏2、菜单及工具栏3、程序块区4、角色资料区5、脚本区6、控制按钮7、舞台区8、新建角色按钮9、角色列表区

二、游戏课堂:Scratch图形化程序的游戏风暴

学生对于Scratch的兴趣还是很大的。在五年级下学期开设Scratch课程是在他们接触了Logo程序的基础上。一开始,我让学生先玩一玩Scratch中的例子(图2),Scratch自带一个Projects,里面有系统提供的动画、故事、游戏、音乐甚至是绘画。在一系列射击游戏、键盘控制游戏、对战游戏中,学生的兴趣被充分调动起来了。小学生对电脑游戏还是很喜欢的。经常在完成任务之余央求我给他们游戏时间,正好,利用Scratch,我适时引导:“这些Scratch中的游戏好玩吗?”“当然好玩。”“但是其实呀,现在大家不是叫真正的玩游戏,要让老师说,现在是游戏‘玩你’,为什么这么说呢?这是由于现在同学们玩的都是别人编好的游戏,你都只能按照别人设计的去操作,要说真正厉害的啊,应该是自己能编出游戏来供别人去玩的。”

听了我的这一番话,学生们更加兴奋了。

“老师,我们小学生也可以做出这么精彩的游戏吗?”、

“老师,那快教我们Scratch怎么用吧?”

这样一来,学生由被动的“要我学”变为主动地“我要学”。在他们眼中,Scratch功能强大,变学为玩,何乐而不为呢?

案例一:游戏1——打老鼠

游戏描述:在月球表面有一群老鼠四处游荡,玩家需要用瞄准器对准老鼠,进行射击。每打中一只老鼠得一分,瞄准器变红,老鼠消失。

这类射击游戏,学生制作起来兴趣很大。教学的时候,我也是采取了从玩游戏到编游戏的策略。让学生先玩游戏,激发了兴趣之后,请他们说说这个游戏的三要素:舞台背景、角色、动画。这三个要素是每次制作动画之前必须弄清楚的要素。对于《打老鼠》游戏来说,舞台背景就是月球。角色有2个,一是老鼠,二是瞄准器。那么动画呢?要对每个角色分析。

(1)老鼠的动画:

教师需要引导学生分析:老鼠是直线运动吗?有规律吗?它的速度是怎样的?先搭建流程图(图3),然后根据流程图来编写,这样动画的关键语句就在于随机旋转的语句了。这里,让学生自己寻找,哪里有随机的语句呢?经过学生的自主探索,他们能够发现在“数字和逻辑运算”中有“在某个范围内随机选择一个数”的命令。所以,结合随机语句,就能完成老鼠自由移动的命令(图4)。这里,老师需要提醒学生流程图中的“移动100步”换成了一个循环,每次执行10步,重复执行10次。为什么这么修改呢?让学生把两个语句都试一试,他们很快就能够知道前一种“移动100步”让老鼠的移动太僵硬,而改成一个循环,老鼠的运动就和谐很多。

让我们再来看看老鼠被打中的程序。什么情况下老鼠被打中呢?1、按下鼠标。2、碰到瞄准器。怎样才表示同时满足两个条件呢?这里就要用到“数字和逻辑运算”中的命令。我让学生思考在如下三个条件中选一个(图5),学生能够正确的做出选择。至此,程序完整如下(图6)。当然,打中老鼠加1分,并且播放声音是在第二课时的基础上完善而成。

(2)瞄准器的动画:

瞄准器的动画很容易,是跟随鼠标指针运动;按下鼠标并打中老鼠,瞄准器变红。在这里,笔者又继续追问,瞄准器什么时候变红呢?这里要满足几个条件?学生经过思考可以知道,当操作者按下鼠标并且打中老鼠,瞄准器就会变红。那用什么命令呢?还是“数字和逻辑运算”中的命令(图5)。那么瞄准器怎么会变红呢?这里我让学生讨论。在“外观”的模块中有“切换到造型1”的语句,所以自然有学生提出要给瞄准器增加一个造型。这就好比电视中一人分饰两个角色。至此,瞄准器的动画语句也轻而易举(图7)。

 

这一游戏教授完毕之后,让我惊奇的是学生仿照这个游戏做了如下的创新:在海底世界,海豚跃出水面,训练员手拿皮球,躲避海豚。初始分为10分,碰到一次减1分,直至0分游戏结束。这一游戏正是我下节课的练习课《躲避篮球》的设计思路。想不到,学生已经超前,并且,自己完成了整个的游戏设计。这让我不得不惊奇:游戏课堂的魅力已经初显。

   

案例二:游戏2——猴子接香蕉

游戏描述:猴子随鼠标在水平线上移动,香蕉随机从舞台上方下落。游戏接住香蕉加1分,香蕉消失。如此反复。

有了前面的打老鼠,猴子接香蕉猴子的控制不是难点,这个游戏难点在于香蕉的下落。我在舞台上用X轴Y轴进行了分析。让同学观察香蕉从出现到下落它的坐标的变化。五年级学生数学思维还是能够得上,他们很快就看出随着香蕉的下落,它的X轴是没有变的,发生变化的是Y轴。“那么Y轴怎样变的?”我的提问一出,不少学生都知道“不断变小”。是的,从香蕉出现它的Y轴坐标170到下落至-170,香蕉的Y轴不断 减小,直至-170,那这一步如何用我们的语句实现呢?我给学生看了如下两个循环(图8):

 

y<-170

循环体

循环体

y<-170

 

图8

 

通过流程图来分析该用哪一个(图9)。学生也能得出应该用“重复执行……直到……”的命令。重复执行的部分放循环体内,条件就是Y坐标<-170。

这样,本题的难点迎刃而解。程序如下(图10):

图10

图9

 看看这个流程图,再对照看看右侧的命令,我们能在命令中找到相对应的流程图。这也是上课我让学生讨论的重点:每个角色的动画内容具体是什么。只有他们先说出来,才有可能编的出来,所见即所得,也正是scratch的优势。

 

三、游戏行动:儿童特性的网络世界

每个游戏制作出来了,千篇一律可不好,于是,在每个游戏的最后一课时,我总是留时间给学生,让他们发挥自己的创意,在游戏的基础上进行创编和完善。此时,再多的天马行空也不为过。于是乎,我们看到了这样的画面:聚精会神的小A认真的修改自己的作品,不停地尝试;遇到了问题冥思苦想的小B,在同学的帮助下纠正了一个问题,开心的手舞足蹈……就这样,一个个极富有创意的作品诞生了。

笔者班上有一位同学小丁,以前信息课上总想着玩游戏,如果有上网的机会就会去玩网络游戏,上不了网就会自己去找电脑中的其他游戏,可以说,对于老师布置的任务漫不经心。但当本学期接触了Scratch之后,小丁同学像变了一个人一样,课堂上听讲认真多了,对于老师布置的任务也是积极完成。并且经常能够回答老师提出的问题,一节课,总能按照要求做出一个游戏来,还能下位做小老师,帮助其他同学。从小丁的转变我看到了Scratch的魅力真正彰显。

当然,做好了游戏不能一个人玩,我会在每个制作游戏结束的一课全班评选“最佳导演奖”。小组同学可以下位试玩其他同学的游戏,继而推选出一位同学至全班参评。要知道,每组推荐出的同学会得到老师的“最佳导演奖的”奖状和亲笔签名一张。学生们可积极了!每次下课了都舍不得走,纷纷围在电脑桌前继续他们和Scratch的亲密接触。

就这是Scratch图形化程序语言的魅力。在不知不觉中培养了学习兴趣,锻炼了学生的思维能力,了解了程序设计的基本思想。从游戏课堂到游戏行动,用 Scratch图形化程序语言构建的儿童游戏网也成为他们的学园和乐园。

是的,游戏,想说爱你也容易。