玩转趣味游戏,渗透计算思维
2021-11-16林伟腾
林伟腾
【摘要】计算思维是21世纪人工智能时代人人都应具备的核心技能之一,而如何有效地培养学生的计算思维是教育界必须关注和思考的问题。在小学阶段,信息技术课程中的编程课程是渗透计算思维的重要途径。在Scratch教学中,以趣味游戏为载体,既提高了学生的学习兴趣,又可以让学生在游戏的编程设计中经历计算思维的过程。
【关键词】计算思维;趣味游戏;信息技术;Scratch
计算思维是目前国内外各界广泛关注的一个概念,它是21世纪人工智能时代人人都应具备的核心技能之一。什么是计算思维呢?2006年,美国卡内基·梅隆大学计算机科学系主任周以真教授提出:计算思维是运用计算机科学的思维方式进行问题求解、系统设计、以及人类行为理解等一系列的思维活动。在小学阶段,信息技术课程中的编程课程是渗透计算思维的重要途径。Scratch编程教学中,以学生喜欢的趣味游戏为载体,让学生在游戏中掌握游戏的设计思路、编程的知识,经历计算思维的过程,有效培养计算思维。
经过对六年级学生的教学实践分析,下面以Scratch编程《飞机大战》为例,探索提出在小学信息技术编程课堂上,通过“思维导图分解问题——分模块展示识别模式——绘制程序流程图形成算法——程序调试”的教学模式,渗透学生计算思维,让计算思维深入人心。
一、Scratch 游戏《飞机大战》
曾几何时,微信内置经典小游戏《飞机大战》火爆社交圈,刮起一波“全民打飞机”的浪潮。基于Scratch编程开发的《飞机大战》沿袭了其趣味性和娱乐性,并且具有简易性,适合小学生模仿设计。
游戏介绍:玩家通过鼠标控制战机,在躲避迎面而来的敌机时,战机通过发射子弹打掉敌机来赢取分数,撞上敌机则玩家生命值递减,直至为零时游戏结束。游戏过程中,玩家打中降落的补给,生命值即可增加。游戏主界面如下图1。
上课伊始,笔者先与学生讨论飞机大战游戏,并让学生试玩,引出本节课任务——设计游戏《飞机大战》。相比玩游戏,制作游戏让学生们更加跃跃欲试。
二、问题分解,思维导图来帮忙
将问题分解是计算思维中关键的一个环节。在学生明确设计任务后,笔者会让学生思考游戏的组成,各部分各模块的功能,尝试将复杂问题简易化。对于每一款游戏,引导学生从下面几个问题思考。
1.该游戏中的主要功能是什么?
2.该游戏由哪几部分组成,有哪些元素或者模块?
3.该游戏各元素的功能是什么?
思考讨论完上述问题后,笔者会引导学生绘制思维导图,如图2。
在思维导图的帮助下,学生可以清晰地梳理到游戏由五部分组成,并认识到游戏的设计思想,从大功能简化分解到各模块、各个具体任务中。经过问题分解的过程,学生策略性和计算性的思维得以发展。
三、模块展示,挖掘规律,识别模式
在问题导向和思维导图分解后,学生要解析模块的规律和趋势。笔者将准备好的功能模块及实现方式作展示,组织学生小组讨论分析内部规律,找出异同点。
以《飞机大战》为例,在教师的引导下,学生踊跃反馈,挖掘出以下规律:
1.敌机和补给都是降落的,在顶部位置开始降落;
2.子弹是上升的,直到射中目标或者到达顶部;
3.敌机、子弹和补给数量逐渐增多;
4.存在相应事件处理:敌机爆炸、战机爆炸、子弹消失等。
综合以上规律,可以尝试对敌机、子弹和补给模块识别模式:
发现模式的能力是可以锻炼的,在教学上,我们要引导学生挖掘规律,找出异同之处,也可采用韦恩图进行思维练习。
四、绘制程序流程图,形成算法
程序流程图是程序运行具体步骤的描述,也是问题解决的方法、算法的一种描述。画流程图的过程实际是思考、设计的逻辑过程,它是算法的梳理,也是计算思维的体现。所以,在小学阶段,Scratch编程教学有必要借助程序流程图来编程。
进入编程设计之前,引导学生绘制程序流程图。以敌机模块为例:
在教学中,绘制一个完整的流程图也许会有困难,教师应注意方式,可以采用填空、模仿等方式由浅入深、由易到难引导学生完成。
完成流程图,即可在Scratch中搭建对应积木,完成设计,敌机模块编程如图4-2。
五、程序调试
在程序运行时出现错误,俗称BUG,是屡见不鲜的事。当出现BUG时,需要调试程序。在教学中,要鼓励学生,提高学生发现错误并修复错误的能力,教授学生问题溯源、检查程序流程图、分模块测试、逐行调试等方法,对错误逐一击破。在案例中,学生在运行后就发现了一些问题。如,运行程序时发现没有敌机,问题出在哪?
既然没有“敌机”,那么就关注敌机模块,学生采用逐行调试的方法,发现“敌机”在y坐标180处,即最顶部时,敌机显示,但后面程序进入分支结构“碰到边缘”,就删除了克隆体。如何解决呢?引导学生采用以下两种方法:一是将“敌机”造型中心点移到“敌机”上方;二是降低y坐标初始值。这样敌机不会一开始就接触顶部边缘,如图5-1,5-2。
调试是思维再思考、再设计的过程,程序中回溯、调试、纠错的过程,更是学生不断进行自我优化和成长的过程,也是计算思维有效渗透的过程。
六、结束语
基于Scratch编程的《飞机大战》游戏案例教学,以“思维导图分解问题——分模块展示识别模式——绘制程序流程图形成算法——程序调试”为教学模式,学生在玩中学、学中玩,经历了游戏设计和计算思维的过程,提高了计算思维能力。
在小学阶段,教师无法深入讲解计算思维,但通过Scratch趣味游戏,结合上述教学模式,引导学生运用计算思维去思考,潜移默化地培养其计算思维,提升其解决问题的自信和能力以及在未来的成长与学习生活中运用计算思维挑战困难的能力。
参考文献:
[1]Jeannette M. Wing. Computational Thinking[J].Communications of the ACM,2006,49(3).
[2]刘向永.计算思维改变信息技术课程[J].中国信息技术教育,2013(6).
[3]李曉明,蒋宗礼,王志英等.积极研究和推进计算思维能力的培养[J].计算机教育,2012(5).
[4]黄静,高延英,杨宇姝.基于计算思维的程序设计课程教学模式研究[J].计算机教育,2013(5).
[5]王益.程序设计教育:现状、问题与推进策略[J].中国电化教育,2006(12).