《飞碟回家——设计简单游戏》教学设计

李盛老师

  ●学习者分析

  本课的教学对象是小学五年级的学生,通过前面的学习,他们已经掌握了Scratch各模块的基本命令,具备独立完成简单任务的能力。这个年龄段的学生的思维正处于认知发展阶段,喜欢动手操作,虽然具有一定的分析问题和解决问题的能力,但没有整体规划布局的能力,同时缺乏对直观事物背后技术本质的探究,而本节课是个很好的整合点,能够帮助学生透过事物的表象看本质,重点帮助他们建立整体规划的意识。

  ●教材分析

  本课是苏科版小学信息技术Scratch模块的综合练习部分。前面几部分是对每个具体模块的学习,学生用简单的积木搭建式的方法就能制作出比较满意的作品。但如何综合使用不同模块制作出贴合生活实际的作品呢?制作综合作品学生需要掌握哪些技能呢?这需要学生通过综合拓展课来学习。通常综合练习内容需要两节课,甚至更多的课时才能完成,而这是一节市级公开课,只有一课时。笔者认为,选择第二课时的内容进行教学交流,则更具有研讨意义和讨论价值。另外,还能从程序设计整体流程的角度对学生的已有知识体系进行梳理,帮助他们实现个人知识地图的建构。

  ●教学目标

  知识与技能目标:通过具体问题重点复习Scratch控制、外观、动作和侦测模块的综合使用方法;学习测试程序的基本方法。

  过程与方法目标:通过半成品游戏作品制作,初步学习设计简单小游戏的流程;通过完善游戏作品,初步学习测试程序的基本方法。

  情感态度与价值观目标:通过自主探究以及小组合作,提升发现、提出、分析、解决问题的能力以及发散性思维能力,同时养成合作探究的良好习惯。

  行为与创新目标:在测试半成品游戏的'基础上,利用已有资源,创造性地设计有个性的游戏作品。

  ●教学重点、难点

  重点:理解、掌握、灵活运用Scratch中控制、外观、动作和侦测模块的综合使用方法。

  难点:初步掌握设计简单小游戏的流程。

  ●教学策略

  本课是一节典型的综合能力拓展课,要求学生只要能利用所学知识制作一个综合作品就可以了,但这样体现不出学生设计的能力,而且学习效率不高。笔者考虑到小学生的年龄特点,对于他们来说问题比较明确则有利于教学的正常开展,所以本课以任务驱动法为主要教学手段。在活动中,教师适时为学生搭建学习所需的“支架”,帮助他们完成知识的建构。本案例中的任务主要基于学生版程序的编写问题,用几个程序问题连贯具体任务,问题由简单到复杂,让学生在做中学,在学中思,在思中用,使得技能课不仅是知识的传授和技能的学习,更是让学生在情境化的技术活动中,理解运用程序化的方法解决具体问题。

  ●课前活动

  播放环保宣传片。

  设计意图:观看环保宣传片,用视频中具体的数据引发学生的思考,让他们明白环保的紧迫性,同时迅速进入课堂准备状态,间接告诉学生本课的主题内容是什么。

  ●教学过程

  1.情境导入,引出主题

  师:观看短片,我们发现保护环境迫在眉睫。这节课我们一起用Scratch来设计一个小游戏,并在游戏中倡导大家保护环境。游戏背景是:有位飞碟战士想回到自己的家,大家能帮他完成心愿吗?现在,请一位同学到教师机上玩教师版的Scratch作品,看能否帮助飞碟战士顺利回家?(一位学生在不知道游戏规则的前提下大胆尝试,超时,失败了)很勇敢的尝试,他给我们提供了什么经验呢?

  生:玩游戏要知道游戏规则。

  师:那么游戏规则是谁设置的呢?都有些什么规则呢?你在写游戏的时候,如何让用户快速了解游戏规则呢?

  生:游戏编程者……

  教师再请另一位同学演示。

  师:我们看看游戏运行的整个流程。(学生顺利过关)大家可以结合之前学习的Scratch知识,思考游戏中的背景和角色,以及不同角色的脚本是怎么执行的。

  预设:学生看到游戏角色多,脚本编写复杂,可能会有抵触心理。

  设计意图:说始终不如做来得记忆深刻。由教师叙述游戏的制作要求,不如让学生们玩一玩游戏,学生有了体会后再来梳理制作要求,会更好着手。而实际上这正是软件开发中的“需求分析”过程。信息技术课的时间是有限的,虽然小学生对新鲜事物好奇心很强,但专注力差,为了提高每节课的教学效率,教师很有必要在课堂上做一些相关内容的取舍。教师告知学生设计游戏的目的和主题,就是让学生集中精力做跟主题相关的设计,明确游戏中每个角色和背景的作用;让学生玩游戏是根据他们好玩的天性,让其去发现问题,了解游戏运行的基本流程。

  2.同伴互助,模块化游戏流程

  师:(PPT演示)这个游戏的背景和角色有哪些呢?在编写综合游戏时,我们该怎么设计呢?以“飞碟回家”为例,请大家先小组讨论,再由小组长归纳讨论结果。

  生:先设计背景,再设置角色,最后编写脚本。

  师:之前,我们制作的作品比较简单,大体是先设置背景和角色,再编写程序,最后进行测试;但这次是综合作品,我们必须先进行整体设计,再将游戏按照运行的顺序模块化,然后将不同的角色添加到不同的模块中,最后编写、调试程序。

  学生进行交流。

  师:“飞碟回家”游戏中的角色较多,我们可以借助表格将角色归类。为了尽快学习本课内容,课前老师制作了一个设计简单的游戏学习卡范例(如下表),请大家填写“角色与背景分析”部分的内容。

  学生填写学习卡部分内容。

  设计意图:大部分学生喜欢动手去“折腾”,这样有利于提高他们的创新思维品质,但效率不高,因为学生大脑中没有明确的线索。所以,很有必要通过一定的方式让学生的思维可见,具体的方法是不给学生设限,只要让同伴看懂就行。这样,学生在认识、设计游戏的过程中,无形中为后续编写和测试程序做好了铺垫。实际上,这也正是软件工程中的“概要设计”过程。

  3.分模块编写程序

  师:老师带来了之前学生的一个作品(存在部分明显问题)。

  设计意图:这节课的目标之一是让学生了解整体程序设计的流程。编写多个角色的综合游戏需要大量的时间,如果将任务按照模块分解,学生就可以根据已有的知识基础分段完成作品。按照模块化的思路分别编写程序带来新的挑战是每个模块怎么连接,虽然方法很多,但能轻松解决的学生很少。而笔者提供包含有问题的半成品,其目的是让学生学会解读别人的程序,能在别人编写的基础上提出改进建议,同时能全面掌握调试程序的方法。

  4.自主探究,发现问题

  师:请大家打开学生版“飞碟回家”作品,试试看,游戏能顺利完成吗(如图1)?如果不能,那么是什么原因呢?

  生:“开始”按钮不起作用,这个角色没有编写相应的脚本。

  师:那怎么解决呢?

  生:给“开始”角色编写程序。

  设计意图:学生虽然经常玩各类游戏,但对游戏整体的运行不是很清楚,所以很少有学生能制作出比较成熟的游戏运行界面。学生通过测试已有脚本,发现程序不足并修改;学生先分析问题,再尝试用各种方法解决问题。这样,不仅培养了自主探究能力,而且发散思维能力也得到了提高。本环节只预设了一个“按钮”角色问题,难度较小,目的是增强学生学习的自信心。

  5.完善细节,提高练习

  师:经常会听说某款游戏有BUG,那你的游戏有问题吗?为了保证程序的完整性和正确性,程序编写完成后需要进一步测试。大家讨论一下,程序需要进行哪些方面的测试?(学生讨论,教师引导总结)你的飞碟战士将垃圾清理干净了吗?请大家回想之前学过的“穿越迷宫”的编程方法,以小组合作的方式,让你的飞碟先清理太空垃圾,再回家(如图2、图3)。

  生:先读懂已有的程序,然后调试程序,发现问题。

  师:大家发现了几个问题呢?

  生:两个问题,一是飞碟不能按照迷宫的方式走,二是清理垃圾后动力值没变化。

  师:你们知道怎么解决这两个问题吗?

  生:设定颜色判断,在条件判断中设置动力值。

  师:团队的力量就是强大,现在就剩一个任务了,怎样做能让你的“飞碟回家”游戏与众不同呢?

  生:改变结束部分的飞碟的造型;改变游戏内容部分的背景图片;增加太空垃圾数,让游戏难度增加……

  师:同学们的想法真多啊,选择你比较擅长的,用最短的时间去实现。

  设计意图:经过前面的学习,学生能制作较为完整的游戏了,为了不让学生的作品都一个样,而且为了满足不同学习能力的学生的发展,同时兼顾课堂时间的限制,笔者给学生提供了尽可能多的选择途径。由于本课的容量较大,大部分学生忙于测试程序,会忽略细节问题,所以教师要做些必要的提醒。这个环节最能体现学生学习习惯的多样性,有利于激发学生学习的积极性和主动性,给学生多种解决问题的选择途径,让他们形成适合自己的学习习惯。

  6.汇报展示,总结交流

  活动一:教师展示有代表性的学生作品。

  活动二:学生互相评价交流。

  师:我们请编写程序的同学邀请他的好朋友玩一玩,并说说自己的体验。

  3组学生互相测试。

  生1:建议给玩家多些游戏规则的提示。

  生2:游戏交互的方法可以多样性。

  师:大家现在有编写复杂游戏的经验了,通过大家的体验感言,老师相信大家以后能编写出更优秀的程序。

  活动三:学生补充完成学习卡,并总结。

  师:回顾整个学习过程,分模块查看程序是否基本完成,最后客观总结自己的学习成果,并完成学习卡。

  学生在音乐声中仔细思考,填写学习卡。

  设计意图:学生的学习需要“脚手架”,学习卡的作用是让学生始终知道自己在哪个模块做了什么,学生可能暂时不太理解,但经过多次训练,这种模块化解决问题的方式,会给解决类似问题提供一种途径。教学中笔者并没有明确提出软件开发流程的概念和相关知识,但却在实践活动中,在小卡片的模块问题解决中,潜移默化地使学生形成相关的意识。