罗川兰 张川 邓江华
【摘 要】计算思维是当前国际信息技术教育领域广为关注的一个重要内容。中小学信息技术课程应承担起发展学生计算思维的重要任务。图形化编程采用高度可视化的界面和积木组合式程序设计方法,能有效地培养中小学生的计算思维。本文综合计算思维和图形化编程的特点,以计算思维的分解、抽象、概括、算法思维、评估优化等五要素为导向,结合重庆地方特色,设计了“吃火锅”的编程教学案例,以培养学生的计算思维,期望为教学工作者的实际教学提供参考。
【关键词】计算思维;图形化编程;中小学;信息技术教育
教学背景
计算思维是当前国际信息技术教育领域广为关注的一个重要内容。在国内外中小学信息技术教育领域,计算思维已成为信息技术学科核心素养培养的重要内容。
2013年,英国南安普敦大学Cynthia Selby和John Woollard提出计算思维由算法思维、评估、抽象、分解、概括等要素组成[1]。华东师范大学教授谢忠新认为,使用计算思维来解决问题的一般过程如下:首先将复杂问题分解成一系列小的问题(分解);分别仔细研究这些小的问题,仅关注重要的特征,同时忽略不相关的细节(抽象);然后概括解决问题的思路(概括);接着编写解决问题的程序(算法);对设计的解决方案进行评估(评估),是否最好地解决复杂问题[2](图1)。
传统的基于代码的编程方式对于小学生来说十分困难,而图形化编程通过视觉化的方式将思维设计过程外化地呈现出来,不仅能提高程序设计学习的有效性,还能提供多种方式帮助学生建构知识,能有效地培养学生的计算思维能力[3]。
本文以计算思维的分解、抽象、概括、算法思维、评估优化五要素为导向,利用图形化编程的优点,结合重庆地方特色,设计了“吃火锅”的编程教学案例,以培養学生的计算思维。“吃火锅”编程教学是程序内容的启蒙课,是在学生掌握计算机基本操作的基础上进行设计的。该课结合学生生活实际,采用学生熟悉的“吃火锅”为教学内容,创设教学案例并开展实际教学,引领学生初识图形化编程,培养计算思维能力。
“吃火锅”包括“五任务、五步骤、一思维”的核心内容。“五任务”是在创设的“吃火锅”情境下,编写程序完成去美食街、进火锅店、找到座位、往返取菜、烫煮毛肚这五个任务。
“五任务”利用图形化编程软件的自定义块功能,将复杂的程序逻辑进行封装整合,使学生不受程序细枝末节的影响,专注于计算思维的建立(图2)。“五步骤”是在实际课堂中以计算思维的分解、抽象、概括、算法思维、评估五要素为导向,开展任务驱动教学。“一思维”则是学生按照五个步骤完成五个任务后形成的计算思维。
1.创设情境,分解任务
首先创设“吃火锅”的情境,引出要解决“吃火锅”的任务。并将此情境任务拆分为“去美食街、进火锅店、找到座位、往返取菜、烫煮毛肚”五个任务,并设定五个不同的场景。在教师的引导下,学生抽象地表达所要解决的问题(抽象概念),从起点出发前进找到美食街、进入火锅店、找到座位、取菜、烫菜。
该环节用贴近学生生活的故事情境,激发学生的学习兴趣和学习动机,并训练学生分解任务的能力,渗透计算思维“分解”要素。学生抽象地表达所要解决的问题,将具体与抽象互相转化,渗透了计算思维“抽象”“概括”等要素。
2.任务驱动,思维训练
任务一:去美食街
教师打开“去美食街”程序,并指明任务,编写程序,让角色走到美食街。接着,带领学生分解问题,请学生将问题思路补充完整。
当“黑色小旗”被点击,从人民广场出发,前进 三 步 ,最后进入美食街 。
学生在完成填空的同时,进行了一次思路总结。接着学生根据思路抽象概念,编写、完善程序(概括思路、算法思维)。
任务二:进火锅店
进入美食街后,还需走进火锅店。同样地,打开“进火锅店”程序。带领学生分解问题,将问题思路补充完整。
进入火锅店线路分为三个部分。
当“黑色小旗”被点击,前进三步,向右转,然后前进两步,向左转,再前进三步,进入火锅店。
任务二是任务一的巩固练习,并在程序中增加了转弯的内容,提升难度,进一步训练学生思维。完成任务一和任务二后,教师进行小结,回顾前两个任务的操作,先分解任务与抽象概念,最后概括思路,完成程序的编写,形成算法思维。在此过程中,一步一步培养学生的计算思维(概括思路、算法思维)。
任务三:找到座位
在“找到座位”任务中,学生自主编写程序,让角色走到空桌子旁。学生在编写程序时发现,拼接二十几个“前进一步”程序块很费时,而且程序很长。教师引导学生寻找重复使用程序块,引出使用“重复执行几次”程序块优化程序,提高编写效率。任务完成后进行小结,当有多个相同的程序块时,可以使用“重复执行几次”优化程序,提高效率。学生在此过程中,对程序进行评估,并找出优化程序的办法(优化程序),渗透计算思维“评估优化”“算法思维”等要素。
任务四:往返取菜
在“往返取菜”程序中,角色需要到取菜处取菜,并放到桌子上,一次取一盘菜,共取六盘菜。为简化任务、优化程序,教师先带领学生分解问题,总结第一次取菜的思路,并编写程序。接着与学生共同完成第二次取菜的程序,对比两次取菜的程序,发现有相同的程序段。再次引导用“重复执行几次”优化程序。并且任务四强调必须思考判断重复执行的是多个程序块组成的程序段(概括思路、算法思维)。
学生完成任务后,总结用“重复执行几次”,将程序长度变短,操作变少的过程是对程序的评估、优化(优化程序)。
任务五:烫煮毛肚
打开“烫煮毛肚”程序,烫煮毛肚。重庆火锅烫毛肚的秘诀是先放到锅里、煮一煮、拿起来,再放到锅里、煮一煮、拿起来。重复三或四次,最后吃掉。请学生分析问题,总结思路,并说给同桌听听,然后编写程序实现烫煮毛肚的动画效果。
学生综合前面所学知识,独立完成该任务。教师要向学生强调不能急于操作,应先分解任务、抽象思路,并与同桌交流。交流完成后,编写、优化程序。至此,学生初步掌握了计算思维方式。
3.回顾深化,思维提升
最后教师将和学生再次回顾解决程序问题的步骤和思维方式。启发学生:应用计算思维不仅能解决程序问题,还能解决学习和生活中的实际问题。“吃火锅”一课源于学生的生活实际,学生通过对“吃火锅”问题的分步解决,完成了计算思维的迁移运用。在学习过程中,学生不但表现出极大的兴趣,而且通过对抽象问题的主动探究,提升了利用计算思维解决问题的能力。
总 结
编程教学是培养计算思维的有效途径。笔者设计并实施了“吃火锅”一课,开展基于计算思维培养的图形化编程教学,将内容分解为五大任务,并将“抽象”“概括”“算法”“评估”等要素融入教学,使学生在学习中体验编程带来的乐趣,提高了利用计算思维解决问题的能力。
总之,基于计算思维培养的图形化编程教学能够吸引学生兴趣,培养学生的计算思维,说明其具有适用性和可行性。将来要根据小学生的特点,以生活实际问题为出发点,系统地开发图形化编程课程,并且开展实证研究,探究编程课程培养计算思维新的教学模式。
Selby C , Woollard J . Computational thinking: the developing definition[C]// Special Interest Group on Computer Science Education. 2013.
谢忠新. 关于计算思维进入中小学信息技术教育的思考[J]. 中小学信息技术教育,2017(10).
郭守超, 周睿, 邓常梅等. 基于App Inventor和计算思维的信息技术课堂教学研究[J]. 中国电化教育,2014(3): 91-96.