《Scratch趣味程序设计之吃豆子》教学设计与反思

2016-09-10 07:22朱凤惠王苏明钟柏昌
中国信息技术教育 2016年2期
关键词:大嘴巴控件计数

朱凤惠 王苏明 钟柏昌

在中小学程序设计教学中,教师应明确,就基础教育而言,程序设计教学重要的并不是教给学生语言和语法,而是教给其程序设计的思想和思维方法,让学生能够用编程来表达自己的创意和想法,培养其创新能力以及分析问题、解决问题的能力。据此,笔者在本课选取极具启发性和趣味性的“吃豆子”任务,以当前基础教育改革中的“核心素养”理念为目标展开教学。

教材与学生情况分析

本节内容选自冀教版《Scratch程序设计》中的第7课,主要涉及随机数与动作功能模块结合的运用、侦测模块“碰到‘颜色’”的使用、分支语句的使用、变量的使用,并进一步巩固已学过的鼠标交互、广播和接收控件的使用,从而完成大嘴巴吃豆子并实现自动计数的功能。

本节课的教学对象是五年级学生。经过前几节课的学习,学生已经熟悉了Scratch的编程界面和各个功能模块,掌握了其编程方法,他们也对使用Scratch创作有趣的动画产生了浓厚的兴趣,基于积木式的编程能力也有了显著提升,并且脑海中产生了很多需要通过Scratch来实现的想法。

教学目标

基础知识与基本技能层(双基层)目标:掌握条件语句的使用;掌握颜色侦测控件的用法;掌握变量的使用方法。

问题解决层目标:能够利用角色的显示与隐藏设计游戏情节;能够利用变量及循环结构实现自动计数功能。

学科思维层目标:在游戏制作的过程中,体验抽象与建模的思想;经过对程序的修改,体验迭代与复用的思想;了解Scratch功能模块中积件组合的规律,体会Scratch自避免语法错误的优势,体验标准化思想。

游戏设计与实现

1.任务设计

基于上述教材和学情分析,笔者分别预设了两个由易到难、逐步递进的游戏开发任务(如表1)。从核心素养的角度来看,任务一注重双基层和问题解决层,主要使学生掌握各个控件的使用方法,能利用所学知识解决简单的问题,搭建简单的游戏脚本。任务二是任务一的进阶版,主要在任务一的基础上进行修改,强调学生对已有作品的再利用和再创造,更注重核心素养中的问题解决层和学科素养,让学生在不断修改与测试的基础上,体验迭代与复用的思想。

2.程序实现

“吃豆子1.0”应用程序主要由以下四个部分组成:一是多个“豆子”角色随机运动,可以借助随机数控件设置豆子在屏幕中随机位置的实现(如图1);二是当豆子碰到大嘴巴时,发出广播信号,并消失;三是借助“面向鼠标移动”控件,使大嘴巴跟随鼠标运动;四是当大嘴巴吃到豆子后,即接收到广播信号后,嘴巴闭合,并快速切换两次造型,模拟吃到豆子的效果。

“吃豆子2.0”应用程序主要是在上述程序的基础上添加自动计数功能。“大嘴巴”和“豆子”角色的参考脚本分别如图2和图3所示。

需要注意的是,本课中出现了一个新的概念——变量,对此概念的讲解主要有两种教学思路。一是通过与“常量”进行对比,直接讲解“变量”的概念;二是不向学生介绍完整的“变量”概念,而是将变量比喻为一个容器来帮助学生理解,在“变量”这个容器中可以存储数值,并且数值是可以变化的。在Scratch中创建的变量将在满足一定条件时自动增加设定的数值,从而实现自动计数。鉴于本节课的教学对象是五年级的学生,常量和变量的概念都未接触过,即使是从常量的概念出发来引导学生理解其含义仍有一定难度,因此在实际教学中,笔者选择了第二种方案。

教学实践

在本节课中,笔者主要通过以下四个环节来实施教学。

1.兴趣导入

教师向学生演示游戏“大嘴巴吃豆子1.0”(游戏中的豆子在厨房中随机运动,大嘴巴在鼠标的指引下去追逐豆子,吃到豆子后豆子消失,大嘴巴闭合,并快速切换两次造型,然后继续去追逐其他豆子)。教师提示学生在观看游戏的过程中思考该游戏涉及哪些角色,并尝试分析各角色有哪些行为,这些行为可以用Scratch中的哪些功能模块来实现。

2.任务分析

对任务的分析是培养学生分析问题和解决问题能力的基础。因此在开始制作之前,教师先让学生欣赏游戏,再说一说该任务中的角色和各个角色所具有的行为,以及可能用到的相应控件,这是培养学生分析问题的能力的过程,最后要求学生完成表2和表3中的任务分析。

3.任务挑战

在脚本搭建之前,笔者先抛出问题:如何判断豆子遇到大嘴巴?遇到大嘴巴之后,豆子是通过什么交互模块发出信号的?对于第二个问题,很快就会有学生联想到以前学习过的广播与接收控件。但是对于第一个问题,大部分学生都存在困惑,此时,笔者带领学生一起认识“颜色侦测”控件、“隐藏”控件以及“面向鼠标指针”移动控件,由于大嘴巴和豆子的颜色不同,因此可以用“碰到‘颜色’”的方法来判断大嘴巴是否吃到豆子,“隐藏”控件可以用来模拟豆子被吃到即消失的效果,“面向鼠标指针”移动控件则可以用来模拟大嘴巴跟随鼠标移动的效果。最后笔者提出任务一:完成大嘴巴在鼠标指引下吃豆子的程序。学生自主探究,在不断地测试和调试下完成该任务的脚本搭建。

接着,笔者提出任务二:对大嘴巴吃到的豆子进行计数。首先,让学生人工计数被吃掉的豆子的数量。学生经体验发现,在数量较少时人工计数尚可,但数量足够大时,人工计数就比较费时费力。此时,笔者引入“变量”,在Scratch中创建一个新的变量,在满足一定条件时自动增加设定的数值,从而实现自动计数。其次,笔者抛出问题:用来计数的“变量”在什么情况下会自动增加?学生很快就会想到是对被吃掉的豆子的数量进行计数,所以豆子被吃掉以后“变量”自动增加。这样,本课中最大的难点就解决了。然后,笔者给学生充足的探究时间,让学生自主探究或者以小组合作的形式完成任务二,在不断测试和调试过程中发现问题并解决问题。如果学生仍未解决问题,引导学生回顾该课的重点知识:“颜色侦测”控件的两种颜色是否选择正确、广播控件的使用是否得当、“变量”的使用是否正确等。最后,笔者与学生一起分享优秀作品并点评。

4.课堂总结

笔者对本节课进行了总结,并告诉学生利用Scratch可以制作很多有趣的小游戏,游戏制作最重要的就是创意,要养成勤动脑、多动手的好习惯。“勤动脑”就是要善于思考,并养成随时记录的好习惯,因为有些创意在脑海中会稍纵即逝;“多动手”就是要善于将自己的创意付诸实践,用程序将“空想”变成现实,争取做行动上和思想上的双重巨人。

教学反思

本课的教学重点是“颜色侦测”控件的使用方法、利用变量实现自动计数、抽象和模块化、测试和调试程序。从任务完成情况来看,所有学生都完成了任务,但由于课堂时间有限,为了照顾大多数学生的学习进度,本课并未设置拓展任务。因此,本课还需改进的地方就是可以适当增加拓展提升,让学有余力的学生继续进行探索发现。整体来说,整个教学过程生动有趣,学生在玩中学,在学中玩,提高了分析问题、解决问题的能力。

猜你喜欢
大嘴巴控件计数
两个基本计数原理A卷
使用“填表单”微信小程序 统计信息很方便
基于.net的用户定义验证控件的应用分析
1元钱
古代的人们是如何计数的?
变变变!变身“超级大嘴怪”!
蚕豆大嘴巴
利用VF6.0的Timer控件实现动画效果
Spreadsheet控件在Delphi数据库系统中的编程与应用