肖平兴
摘 要:Kitten源码编辑器是基于图形化编程的工具,主要面向青少年儿童。我校使用编程猫Kitten源码编辑器开展创意编程社团,开展编程教学的同时进行编程与数学学科融合教育研究,以期通过相关课堂教学达到“一练两通,一课双效”的效果。在教育实践过程中,我们在设计教学时基于学生认知特点,紧扣小学数学核心素养与关键能力发展的需要,选择相应的学科知识融入编程教学中并取得了一定的效果。文章就编程与数学融合教学中发展学生数学核心素养涉及的部分思维能力做分析和讨论。
关键词:编程教育;小学数学;核心素养
在当前国家大力推动编程教育的背景下,全国各地纷纷开展小学编程教育,一般都是依附于信息技术课程,使用图形化编程软件作为学习平台。开展编程教学有助于更好地增强学生计算思维、逻辑思维、编程思维。研究表明,可视化编程有利于培养学生的计算思维。计算思维和数学思维内容本身就存在很多交集,如逻辑思维、抽象思维、建模思维等。创意编程的特性适合青少年学生的发展特点,可以培养学生建构编程知识的能力与思维、问题发现能力、自我学习能力与独立解决问题的能力。
当前小学信息技术课时偏少,编程教学在信息课的占比也不足,为了满足对编程感兴趣的学生的需要,我校开展了创意编程社团。通过近两年的编程猫Kitten编程教学,我们初步形成了小学阶段的创意编程社团与数学学科融合的社团辅导课模式,实现小学编程教育课融入数学学科知识,提升数学核心素养与关键能力的初步目标。编程猫Kitten是国内第一款2D图形化编程语言,涉及音乐、画图、编程、创客硬件等。它主要面向青少年儿童,图形化、模块化的编程语句易于理解和操作,与Scratch编程有类似的操作界面和方法,但它的在线素材更加丰富、分享发布功能便捷。
一、在编程猫Kitten编程教学中提升学生数学运算能力
小学四、五年级数学关于数字的四则运算基础学习基本完成,而运算能力作为核心素养的一方面需要常用常练。虽然数学课每次都可能会包含运算的练习,但是在编程猫Kitten编程社团辅导课上,学生练习的热情更高。学生每次新课前都要进行一次四则运算的口算比赛,题目是随机生成的,得分高的还能像玩游戏一样进入高分榜。比赛使用的软件由学生用编程猫Kitten源码编辑器编写。由于这一小练习时间不长并且反馈及时,还有上榜的挑战性,能很好地激发学生的学习动机,保持高水平的专注时间,达到较好的口算练习效果。在学习创作动态作品时,估算能力也是学习的要点。例如,作品中角色的移动位置要达到较好的效果,学生在编写程序时就要运用估算能力来确定角色在平面坐标轴的位置,通过调试反馈来评估结果。所有的编程都离不开数学,计算机科学的基础就是数学,数学的计算法则和逻辑在编程作品里同样经常用到。例如在“小猫抢红包”的游戏作品里,要解决得分和失分或者是重玩机会的问题时,就要运用到累加的概念和比较运算知识。同时,学生要在作品里正确应用循环语句和条件判断语句等,这也促进了学生逻辑推理能力的提升。
二、在编程猫Kitten编程教学中提升学生演绎推理能力
小学生的抽象思维还未成熟,生活经验是演绎推理过程中的重要资源。小学数学要求学生认识周期现象,探索并发现简单周期现象中事物的排列规律。小学数学的核心素养推理能力的高阶水平是能在变式的情境中,依据定义(规则)进行稍复杂的推理。弗兰登塔尔认为,数学教育应当从学生熟悉的现实生活开始和结束。在创客项目的作品制作中,我们就设计了“智能红绿灯”的题目。红绿灯就周期变化的例子,虽然通常只能看到一个路口一个方向的红绿灯变化,但是日常经验也能让学生意识到其他路口也应该是周期并关联的变化。所以在“智能红绿灯”的编程设计时,要同时考虑红、黄、绿灯的周期变化并能推理另外三个路口方向的红、黄、绿灯周期变化,以及当要改变其中一个路口的绿灯通行时间时,会影响其他方向的红绿灯周期变化。此类题目如果是在纸面计算推理,往往会让学生望而生畏,但是在编程创客的环境下,学生通过从单一到多联,从程序到实体,循环验证,最终解决问题。源于生活、用于生活的题目让学生很有创造性地解决了问题,加深了对周期的理解,提升了演绎推理能力。
三、在编程猫Kitten编程教学中提升学生数学建模思维能力
小学数学建模思维是核心素养之一,分析和解决问题能力体现在能用合适的方法解决具体的问题上。例如,经典的路程问题和平面多边形计算问题,这些问题具体情况各种各样,但紧扣模型或者是公式,找出未知数就是解决途径。有些学生在这个阶段的数学学习中遇到了一些瓶颈,例如,一些路程、面积问题可以通过简化并建模解决,但是学生总是找不到要领。通过学习编程来解决这些问题,可以深化学生对概念的理解,在变量调整的情况下,学生能够发现更多问题的起源,从而深刻理解模型并学会灵活应用。
数学中的相遇模型对小学生来说比较困难,创意编程社团的学习用设计游戏的形式加深小学生对相遇模型的理解。例如,相遇问题通常有求时间、求路程、求速度三种类型,相应的公式是三条,但最基本的模型其实只有一个,就是A速度、B速度、路程和时间四个变量组成的关系。理清模型参数的关系后,学生设计各种问题的编程代码,就是三条对应的数学公式,而每一种除了问题以外的其他变量在作品里都可以随意调整,这样就可以得到不同的结果。例如求时间的问题,问题的模型为时间=路程÷(A速度+B速度),路程、A速度、B速度均为可输入的变量,甚至相对方向也可以用改变其中一个速度变量为负值来调,设定完成后可以得到问题答案,还可以看到动态直观的演示。通过对具体问题的编程实践,学生更加深刻地理解相关问题模型。除了经典问题应用在编程学习的例子,我们还扩展一些数学问题如“鸡兔同笼”,通过引导学生把握动物脚和头的数量关系设计好模型,就可以快速计算各种动物数量,还能作为出题的模板。
四、在編程猫Kitten编程教学中提升学生数学空间思维能力
空间思维是小学数学核心核素直观想象的重要组成部分,在小学培养好学生的空间思维能力是几何学习的关键。编程教学中,用程序语句指挥画笔画出各种平面几何图形的过程,就是一种描述和想象特定图形的思维转换过程。例如在学习画正多边形的时候,先从学生熟悉的正方形入手,使用逐步执行的命令“前进100”“右转90”运行,看到结果后,继续编写运行程序,让学生了解他用的命令是如何指挥画笔运行画图。通过渐进式的练习来打通描述和实际运行的联系,从而训练描述和空间思维的转换能力。当学生学会用循环语句画正多边形后,继续指导他们尝试如正方形组成的“田”字这一类通过正方形旋转起始方向变化而来的组合图形,引导学生学会把单个正方形看作一个整体,然后这时只考虑它的起始方向变化,用程序语句描述指挥画笔,把一个变成四个,组成另一个图形。通过层层深入的学习和训练,学生在这方面的图形空间思维能力得以强化。
综上所述,编程猫Kitten编程教学在社团教育中不但可以学习编程知识,锻炼相关的计算思维、逻辑思维、编程思维,还可以在学科融合思想的指导下提升学生的数学核心素养与关键能力。有趣的游戏挑战让口算能力不生疏;源于生活、用于生活的创客项目培养演绎推理能力;智力难题建模型,用建模思维解决实际问题;五彩缤纷的计算机画图可以充分发展学生的空间想象力。在教育实践中,学生在编程学习中确实提升了部分数学思维能力,这鼓舞我们进一步深入探索更有效的学科融合策略,设计更合理的培训内容,并尝试做提高思维能力的量化研究。
参考文献:
[1]马强.基于计算思维培养的少儿可视化编程教学设计研究[D].石家庄:河北师范大学,2019.
[2]黄芳,黄伟星.从简单走向深度——“简单的周期”教学实录与评析[J].小学数学教育,2019(Z4).