APP下载

让计算思维在图形化编程中落地生根

2019-11-01甘永龙

江苏教育 2019年17期
关键词:脚本小鱼编程

甘永龙

【关键词】Scratch图形化编程;计算思维;对象建模;调试优化

【中图分类号】G623.58  【文献标志码】A  【文章编号】1005-6009(2019)65-0078-03

计算思维是信息技术学科核心素养之一。美国计算机科学家周以真(Jeannette M. Wing)教授认为:计算思维是运用计算机科学的基础概念进行问题求解、系统设计及人类行为理解等涵盖计算机科学之广度的一系列思维活动。[1]在Scratch图形化编程教学的探索和实践中,笔者发现,在程序教学的每个环节中有重点地培养计算思维的四种意识,能在潜移默化中发展学生的计算思维能力。

1.增强问题分解意识,在对象建模中弄清角色的逻辑关系。

教学中,我们会发现,学生在用计算机进行程序创编,解决具体问题时往往想到哪里,做到哪里,缺乏问题分解的意识。这要求教师有意识地围绕实际问题的求解步骤来组织教学,从而使学生运用所学知识将具体问题分解成若干个易于解决的小问题,并抽象出一个个适宜的数学模型。

例如:要画出花朵(见图1),可以先用Scratch中的画图工具画出其中的一片花瓣(见图2),然后建模,将8个花瓣围成360°。通过编程将每个花瓣围绕下端中心点旋转45°完成自动化绘制,最终画出花朵。这种从抽象到编程实现的过程非常直观,有的学生甚至可以在此基础上创编出更有趣的花朵。

上例中仅有花瓣这一个角色,建模比较简单。对于复杂的游戏,我们可以通过列表格的方式,描述解决问题所涉及的各种角色以及角色间的关系。如:五年级的“小猫抓鱼”游戏是利用摇杆控制小猫移动并统计规定时间内抓鱼数量的游戏。该游戏角色多、任务多、相互之间的关联比较复杂,还有许多并行的流程。对此,我们可以通过列表格或画思维导图的方式将无形的思维过程转化为直观的图表(见下页表1)。

问题分解和对象模型建构能让学生从本质上和全局上找到问题解决的思路,明确游戏制作所需的角色,弄清角色之间的相互关系,同时这也能为接下来的局部分析,设计每个角色的造型、脚本、状态,以及每句指令、参数、先后执行顺序提供方向和思路,并能有效发展学生的计算思维。

2.增强有序组合意识,在脚本设计中培养学生的算法思维。

计算思维中的算法是有穷规则的集合,是任务执行与问题求解的一系列有序步骤。在Scratch中,编程就像在搭积木,学生可以直观地看到各种脚本设计呈现出的实际效果。笔者在使用表格将大问题分解为一个个现实的小问题后,引导学生有序组合各类积木指令,清晰描述“猫抓小鱼”的情景。

由于学生的设计经验不足,学生很难理解算法中的分支结构和循环结构。为此,教师可以借助流程图帮助学生描述算法,也可以针对不同的角色,直接拖拽选好的图形积木指令,不断尝试各类指令的有序组合,修改指令的各种参数,完成相應的Scratch脚本设计。以下,图3、图4分别为传统样式流程图和积木块组合式流程图,两图都可以直观地描述“仿真”猫碰到鱼的脚本执行情况:猫碰到鱼显示“抓鱼”造型,否则显示“造型1”。

3.增强纠错优化意识,在程序调试中培养学生的思维品质。

“纠错”是Scratch教学的重要环节,“优化”是脚本程序归纳、简化、改进的过程。从学生设计脚本程序开始,纠错和优化的行为就伴随始终。学生在调试作品时,需要像计算机执行程序一样去思考执行语句,知晓执行每段积木块应该出现的现象,并与实际的执行结果进行比较。当发现效果与预想的有偏差时,就要纠错、优化程序,采用不同的算法实现效果。如在“小猫抓鱼”的教学过程中,笔者组织学生一起讨论脚本运行时的问题,并进行纠错和优化。

师:从舞台效果看,我们发现小鱼游动的画面不太真实、比较机械,大家想想怎么办?

生:在小鱼游动的脚本程序中,我们可以添加命令“在1秒内滑行到X:-15 Y:13”,使小鱼游动的画面更加自然。

师:当小鱼被吃掉隐藏后,如果游戏重新开始,就看不到小鱼了,该怎么优化?

生:在小鱼脚本程序块中添加初始状态为“显示”。

师:上述实现的是一条小鱼,实际情况是应该有好多条小鱼,该怎么修改?

生:其他小鱼外观不同、位置不同,功能是相同的(来回游动,碰到猫消失)。

师:外观不同,可以通过选择图库中不同的角色,也可以利用Scratch绘制,填充不同的颜色。功能相同意味着脚本相同,利用代码复制可以简化编程工作。用随机数字模块“在1到10间随机选一个数”,就可以解决小鱼起点出现在相同位置的问题。

以上教学中,“仔细阅读脚本”“为脚本添加注释”“像计算机执行程序一样思考”“寻找舞台效果与预想情况的偏差”“设计程序作品调试任务单”等,都是发展学生计算思维品质的好方法。通过这样的“纠错”和“优化”,程序的脚本设计会更加合理,指令的数量会更加简约,呈现的效果会更加生动、丰富。

4.增强交流分享意识,在作品评价中充分体验成长的快乐。

每一个学生都有自己的知识背景和生活经验,在作品创作中都会加入自己的想法。在教学中,笔者有意识地让学生展示、分享自己的作品,这既是对学生的肯定,也是引导学生再学习的一种方式。

在“猫抓小鱼”游戏的设计和制作中,有的学生将舞台设置得非常炫酷,添加了动态的珊瑚、贝壳、海草等海洋角色;有的对鱼的造型进行装饰,甚至把鱼换成了星星等其他有趣的角色;有的改变了小猫抓鱼的方式,如在水里抓、在岸上钓……作品的交流和分享促进了学生的思考,打开了学生的思维空间,学生的作品比原来更有个性、更有创意。

【参考文献】

[1]JENANETTE M WING.Computational Thinking[J]. Communications of the ACM,2006(3):34-35.

[2]王志强,毛睿,张艳.计算思维导论[M].北京:高等教育出版社,2012.

[3]牟琴,谭良.计算思维的研究及其进展[J].计算机科学,2011(3):10-15.

(作者单位:南京市高淳区宝塔小学)

猜你喜欢

脚本小鱼编程
玩游戏学编程,Blockly Games上手玩
纺织机上诞生的编程
编程屋完成数百元万天使轮融资
小鱼
小鱼
自动推送与网站匹配的脚本
学编程,先画画
小鱼
举一反三新编
捕风捉影新编