指向计算思维培养的初中Scratch编程教学

2022-03-15 18:47徐萍
关键词:闹元宵计算思维

徐萍

摘要:计算思维是一种解决问题的思维方式——从真实问题出发,运用计算机模式抽象识别问题、分解问题,通过判断、选择、分析,形成有效解决问题的方案,再利用计算机技术实现方案并解决问题。Scratch编程具有图形化、易操作的特点,有利于培养初中生的计算思维。教学中,可设置真实情境任务,助力问题抽象化与实质化;引导剧本、角色、舞台三要素分析,有效落实计算思维活动过程;构建调试程序,迭代形成优化方案;反思归纳方法,促进迁移应用。

关键词:计算思维 ;Scratch ;《闹元宵》

《江苏省义务教育信息技术课程纲要(2017年修订)》明确指出,计算思维是义务教育信息技术学科核心素养之一。周以真教授指出,计算思维是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。Jeannette M.Wing. Computational Thinking[J]. Communications of the ACM, 2006(3):3335。即计算思维是一种解决问题的思维方式——从真实问题出发,运用计算机模式抽象识别问题、分解问题,通过判断、选择、分析,形成有效解决问题的方案,再利用计算机技术实现方案并解决问题。计算思维是人的思维,不是计算机的思维,其注重运用计算机科学知识分析问题,寻找解决问题的方法。

Scratch编程具有图形化、易操作的特点,且大部分学生通过小学阶段的学习已经具备图形化编程的经验。选择Scratch程序在初中开展编程教学可以降低编程学习难度,让学生把学习重点放在问题解决上,侧重让学生经历理清问题、分解问题、抽象建模、确定算法、形成方案,再运用编程进行判断、选择,得到完善的解决方案的计算思维活动过程,使其计算思维得到真正的培养。下面以初中Scratch编程教学中《闹元宵》一课为例具体说明。

一、设置真实情境任务,助力问题抽象化与实质化

利用计算思维解决的问题一般是生活中的真实问题,而生活中的真实问题一般较为复杂,需要将其抽象为计算机能够处理的实质问题。这也是计算思维抽象化和实质化的体现。在Scratch编程教学中,应从学生的生活实际出发,结合其兴趣特点,設置真实的情境任务,让学生在真实的情境任务中,将已有经验与编程学习充分结合,从而能够清晰地理解、明确任务中的真实问题需求,积极主动地分析与表达问题,进而助力计算思维的形成。

教学常见的动作控件时,正值元宵佳节,顺应地区闹元宵的习俗,教师设置了展示元宵节习俗的真实情境任务。由学生介绍习俗内容,并分析、归纳出紧扣动作与内容的“猜灯谜”“吃汤圆”“耍龙灯”等习俗关键词。这能帮助学生理解习俗展示方式与流程特点,明确真实问题需求,有助于问题的抽象化与实质化。

二、引导三要素分析,有效落实计算思维活动过程

理清问题、分解问题、抽象建模、确定算法、形成方案是计算思维活动实施的有效流程。Scratch编程教学需要让学生根据“剧本”内容,用代码实现“角色”功能,并在“舞台”上展现出来。我们可以结合计算思维活动实施流程,引导学生对剧本、角色、舞台三要素开展分析,让计算思维培养落在实处。

(一)分析“剧本”,确定实现序列

Scratch编程中的剧本是真实情境下任务内容的呈现,实现时是有序列的。分析剧本内容能让学生知道解决问题时顺序正确、逻辑合理的重要性。编程时,需要给计算机精准的指令,方能实现需要达成的功能,所以教师应鼓励学生像计算机一样思考,抓住任务中的对象、对象的动作行为及呈现顺序,学会用精炼准确的语言描述并理清整个任务的实现序列。

《闹元宵》一课教学,明确了“元宵节之习俗介绍”的任务后,教师让学生思考生活中介绍习俗的方式。学生会用生活语言描述,介绍元宵节的由来,介绍猜灯谜、吃汤圆、耍龙灯……对此,教师引导学生依据“谁介绍”“介绍顺序”“介绍内容”的结构去表达。通过思考,学生可以描述出类似“我(主持人)介绍元宵节→出现灯笼图片,介绍猜灯谜习俗→出现汤圆图片,介绍汤圆习俗→出现龙灯图片,介绍耍龙灯习俗…… ”的任务实现序列(如图1所示)。

(二)分析“角色”,探究解决方案

Scratch程序一般通过对角色编程实现程序功能。分析角色的过程是寻求解决问题的方法的重要思维过程。教师以问题为导向,引导学生通过分解问题、抽象建模、确定算法等开展计算思维活动。首先,提出问题“任务中需要哪些角色?出场顺序是什么”,引导学生识别任务角色,明确任务序列。学生根据剧本分析容易获得答案,为后续有序分解任务做准备。接着,提问“每个角色需要做什么”,引导学生分解任务,抽象建模。角色不同,完成的任务也不同,有序描述各角色要做什么就是分解各角色的任务。分析中,注意引导学生紧扣角色行为及顺序,抓住重要信息,去除无关信息,依次提取生活行为关键词,再结合Scratch编程将生活行为关键词转化为程序行为关键词,实现生活问题的抽象建模。

分析角色“灯笼”可得出其主要行为是“出现”“介绍”,但这些生活行为关键词在编程中无法识别。结合Scratch编程的表达特点,学生分析发现,“出现”包含“隐藏”“显示”两种行为,“介绍”是通过“说话”行为实现的。这样,就把生活中的“出现”“介绍”分别转变成计算机能识别的“显示”“隐藏”和“说话”,从而获取解决问题的模型。接着,教师提问“如何实现角色的行为”,引导学生关联知识,明确算法。角色行为需通过Scratch程序中的“积木”功能模块构建实现,教师需引导学生根据程序行为关键词关联Scratch知识,思考合理选择“积木”的方法。诸如:实现“说话”行为应选择哪个“积木”模块?如何快速找到该模块?模块中实现“说话”行为的“积木”有几块?颜色和形状分别是什么?选择哪块“积木”才符合设计的角色行为需求?等等。在思考、判断与选择的过程中,学生再次明确问题解决的流程与方法,形成解决问题的算法。

(三)分析“舞台”,合理规划设置

如同真实的问题解决会有对应的场景,Scratch程序中角色功能的展示交互也需要合适的舞台。结合需求,分析舞台并合理规划与设置是必要的。学生根据问题需求,可以选择合适的背景,或自行绘制、导入图片,或通过“积木”实现背景切换、音乐设置,或规划角色布局获取坐标数据等,从而在体验计算机信息表达多样化的同时,完善解决问题的方案。

《闹元宵》一课,学生根据需求可以选择欢快热闹的背景与音乐,展示不同习俗时还可以切换不同的背景。同时,利用“积木”可以设计对象的出现状态与顺序,如“灯笼”可以先隐藏在舞台下方再出现飞入,“汤圆”可以先隐藏再原地出现等。这些设置让作品呈现更加丰富,也让问题的解决更加合理。

三、構建调试程序,迭代形成优化方案

计算思维的根本目的是解决问题,所有的分析最后都要落实到计算机解决问题上。冯士海.点燃高中信息技术课堂计算思维的火花[J].中小学信息技术教育,2018(12):71。调试与交流是学生巩固编程知识、体验自动化的过程,也是学生发现问题、思考问题、解决问题,在迭代中不断优化方案的过程,更是有效促使计算思维形成与发展的过程。经过剧本、角色、舞台分析,学生经历分解问题、抽象建模、确定算法等计算思维活动,已初步形成解决问题的方案。对照形成的方案,学生利用“积木”搭建脚本、调试程序。调试程序时,教师应引导学生观察所得效果是否与方

《闹元宵》一课,学生通过构建程序实现了“猜灯谜”“吃汤圆”“耍龙灯”等习俗展示,但发现有些初步搭建的程序会同步展示各习俗且速度较快,根本无法看清每个习俗的介绍。全班展示交流后,提出修改意见:应让习俗逐个按序呈现,即先把所有习俗的图片、文字隐藏,再逐个出现,用“广播”积木、“等待”积木分别控制习俗的出场顺序和时间。经过学生自行修改和调试实践,问题迎刃而解,方案得到优化。

四、反思归纳方法,促进迁移应用

梳理编程学习中遇到的问题,反思问题产生的原因,归纳解决方法与方案,有利于加深学生对知识、方法的记忆和理解,对学生今后灵活迁移运用知识、模型、算法等有重要的影响。这也是落实计算思维培养不可缺少的一步。

《闹元宵》一课课尾,师生一起回顾课堂学习过程。教师引导学生结合课堂所学梳理、归纳利用Scratch编程解决实际问题的方法。首先,结合生活中的元宵节,分析、归纳典型的元宵节习俗关键词,明确任务实现特点。其次,通过分析剧本内容,理清任务对象呈现序列;逐个剖析“灯笼”“汤圆”“龙灯”等角色任务,抓住其关键行为,将生活行为表达抽象为计算机行为表达,实现问题的抽象建模,并关联Scratch编程相关知识,确定算法;通过设置舞台,规划各角色出现的状态与顺序,形成解决问题的方案。最后,搭建程序,不断调试优化直至形成有效的解决方案。反思归纳的流程与方法如图2所示。

根据真实情境任务中的实际问题,历经分析问题、抽象建模、关联知识、确定算法、形成方案、构建程序以及反复的调试优化,直到形成最优方案、最终解决问题。这样的方法可以作为利用Scratch编程解决实际问题的“通法”,同样适用于后续的编程学习,解决类似“鸡蛋撞地球”“垃圾分类我来说”等生活实际问题。在这样的教学中,学生的计算思维将得到有效锻炼。

3327500338242

猜你喜欢
闹元宵计算思维
张灯结彩闹元宵
程序设计课程中计算思维和应用能力培养问题研究
民族高校C语言程序设计课程教学改革的研究
算法的案例教学探析
浅谈艺术专业学生计算思维能力的培养