基于小学年段认知发展的KODU软件的教学实践研究
2020-09-27邱振华
邱振华
摘要:当前大量的少儿编程软件,如Scratch软件中涉及的部分数学知识、程序算法超出了皮亚杰提出的小学年段的认知发展。有一款3D可视化少儿编程软件——KODU软件,其特点符合小学年段的认知发展。本文基于该软件的特点开发了相关校本课程,以行动研究法的方式在小学三年级拓展课实施,从学生的作品案例分析及前后测问卷结果两方面,以案例研究法和调查研究法的方式证明了KODU确实是一款符合小学年段学生认知发展,且对学生计算思维能力培养有着良好效果的软件。
关键词:小学年段;KODU
中图分类号:TP317 文献标识码:A
文章编号:1009-3044(2020)23-0072-03
1 教学研究背景
随着2017年国务院印发的《新一代人工智能发展规划》中明确指出需在中小学阶段逐步推广编程教育,编程教育进入中小学课堂的热度逐年递增,Scratch软件是目前大多数中小学课堂首选的少儿编程教学软件。笔者自2014年开始即在中小学开展Scratch软件的教学,这些年间主持参与了《初中信息科技学科中实施Scratch编程的途径》等系列课题研究,取得了一定的成果。客观地说,虽然通过教学涌现出大批能在各类编程竞赛中崭露头角的优秀学生,但也存在编程方面的学困生,特别是在小学年段。
2017年,笔者在一次市级信息科技课程交流展示活动中,从上海市虹口区“酷沙”团队(KODU沙龙)的经验分享中,得知了KODU这款软件——一款2012年微软研究院开发了3D可视化少儿编程软件。经笔者研究后发现,该软件相对于Scratch软件来说有其独特之处,其设计更符合皮亚杰提出的小学年段学生“具体运算阶段”的认知发展能力(该阶段的特征主要为守恒化、序列化和分类化),具体如下。
1.1 序列化的事件处理模式
在KODU软件的简单编程中,经常运用的编程模式只有并行计算、事件触发两种模式,且只提供“WHEN...DO...”一种语句。在编写程序时,只需要根据事件中具体序列的触发顺序找到相应模块即可完成事件触发,当有多个事件存在时,则采用并行计算的方式展开。以基础事件“让角色移动”为例:KODU中首先考虑到“上下左右”是一个常用的组合应用,因此单独为其设计了一个模块简化编程难度,其次避开了“坐标”这个概念,直接将坐标的具体应用方法封装在“移动”这个模块中进行使用;在Scratch软件的编程中,该事件的触发需要用到直角坐标系的概念。直角坐标系这一概念在数学学科中一般在七年级才进行教学,这是因为其教学需要学生具备皮亚杰提出的基于逻辑演绎的“形式运算阶段”的认知发展能力,这一定程度上也解释了为何笔者在小学学段Scratch教学中会存在学困生的原因。不可否认,Scratch软件是一款非常优秀的少儿编程软件,但其中涉及的部分数学知识、程序算法超出小学年段的认知发展能力。在KODU软件中,将复杂算法、程序结构、数学知识等内容封装在各类模块中,使得学生可以“即插即用”,将更多精力放在功能实现的“具体运算”中。
1.2 分类化的功能识别模式
“类包含”是皮亚杰提出的小学年段学生“具体运算阶段”的认知发展能力的一个重要维度,该年段的学生可以认识到,一些范畴是彼此嵌套的。在KODU中,采用类似于分级选项卡的模式摆放各种模块,例如要判定游戏胜利,则先点击“游戏”选项卡,在弹出的下级选项中选择“赢”即可(图2)。在这种模式下,学生需要根据分类嵌套的思想去寻找相应的选项序列模块。这一定程度上可以帮助他们完善分类思想,认识事物间的关系,提升“具体运算阶段”的认知能力。
1.3 构建化的自主创造模式
KODU从场景世界来看与“我的世界”这款深受儿童喜爱的游戏非常相像,在软件中,你可以使用“地面刷具、山丘山谷、变形、山尖山峦、水工具”等系列工具,配合各种3D角色创造属于自己的立体3D世界,且可以改变世界中的各种参数,如天气情况、光影效果等,创建的世界场景非常“壮观”(图3)。其世界的创建方法非常简单,大部分操作只需要选择对用工具按鼠标左键或右键即可进行,只要会玩“我的世界”的学生,都可以在KODU中顺利构建自己的世界。这种强大的3D立体化设计功能,罕有少儿编程软件能与之匹敌,非常吸引学生的眼球,让学生在程序设计之外,在场景建模方面可以快速、便捷地将自己的创意呈现在眼前,极大地提升学生的学习积极性,激发创新意识。
2 教学资源开发
从KODU的特点来看,可以看出其是一门符合小學年段学生“具体运算阶段”认知能力的编程软件,但认知能力的发展仅靠“接受式”学习是不够的,还需要学生参与“知识的建构过程”,只有这样才能促进深层次、有意义的思维发展。从文献中得知KODU的开发得到了计算思维的提出者周以真教授的大力支持,让学生学习计算思维的概念是其开发的初衷之一(本文采用的计算思维的定义为普通高中信息技术课程标准(2017年版)中的解读:“个体在运用计算机科学领域的思想方法形成问题解决方案的过程中产生的一系列思维活动”)。因此笔者的KODU校本课程编写目标界定为:在构建的3D虚拟世界中,根据“具体运算阶段”序列化、分类化的特征,按照项目要求使用图形模块自由编写程序,在这个过程中提升思维品质,特别是内化计算思维的概念,并根据“具体运算阶段”中“守恒化”的特性将计算思维迁移到现实生活的应用中去。在具体开发中,笔者按照“生活中的游戏原型(项目原型)”——“搭建我的世界模型(项目建模)”——“游戏制作技能学习(项目编程)”——“交流互玩改进游戏(项目进阶)”的游戏化项目活动流程设计了6个主题项目活动及一个开放式自主设计项目活动。考虑到计算思维属于比较抽象的概念,基于学生的年龄段在课程中并不直接提出其概念,让学生在课程的教学与游戏的编写中对其进行隐性内化。课程内容简介如表1所示。
3 教学实施效果
笔者根据开发的课程资源在小学拓展课(三年级),开展了为期一学期的KODU课程教学活动,下面从学生的项目作品案例与前测、后测问卷调查数据两方面对教学实施效果进行分析。
3.1 KODU课程实施效果分析
3.1.1 KODU课程教学中所呈现的亮点
1)独一无二的场景设计
一千个读者心中有一千个哈姆雷特,每个孩子心中也有自己的梦想世界。基于KODU强大的场景设计功能,每个孩子所设计的世界场景都是独一无二的,能根据个性特征充分发挥主观能动性,调动创造性思维在KODU中“圆梦”。
以项目四——王牌赛车手为例,以下为四位学生所设计的不同场景(图4)。其中作品1和作品2采用的风格较为简约,作品3与作品4采用的风格较为繁复。观察作品细节又可以发现:作品1使用的“赛道”和地面材质比较特殊,采用了双人竞技的模式;作品2的赛道难度逐渐增加,最终需要爬上“陡坡”才能抵达终点;作品3的“赛道”四通发达,有多种到达“终点”的方法;作品4的“赛道”直冲云霄,最考验操作技术。在这之前,笔者仅讲授了“路径工具”的使用方法,在设计中,学生却可以做到绝对个性化,这说明KODU有非常大的自由创作空间,且能让学生快速上手,这种高自由度的场景设计具有其独特的优势。
2)方便实现的自主创意
基于KODU序列化的功能模块封装设计理念,当学生有所创意时,只需要找到对应功能的模块,按照正确的序列顺序进行拼接,即可能实现相关效果,这大大方便了学生探索并实现自己的创意。
以项目五——丛林绝地求生为例,笔者的范例程序功能仅仅是让“小酷”发射“子弹”,但学生却开发出了一系列创意功能(图5):在作品1中,学生设置了一个游戏BOSS,为其编写了智能AI,使其自动移动和发射“子弹”;在作品2中,学生将游戏视角设置成第一视角,更具身临其境的感觉;在作品3中,学生将“子弹”设置成“彩色模式”,将“子弹”转变成“烟花”功能。这些功能的代码实现均为学生自主探索所得,可见在创意思维的驱动下,学生自主学习能力被积极调动,而KODU软件的学习难度也非常符合小学年段学生的最近发展区,激励学生探索实现自主创意。
3.1.2 KODU课程教学中待解决的问题
虽然前文中已提及KODU课程教学中的一些亮点,但客观地说,这款软件也存在一些不足之处,具体如下。
1)硬件配置要求较高
由于这是一款3D图形化编程软件,对于电脑的硬件配置有一定的要求。笔者学校的电脑购置于5年前,相对来说硬件配置较为滞后,不仅打开KODU程序速度缓慢,在运行KODU时有时还会出现花屏、顿卡的现象,且放置部分资源后,即提示“资源数已达最大上限”,无法构建规模庞大、资源较多的场景。考虑到不少学校的电脑配置与笔者学校相似,硬件配置可能是阻碍KODU教学推广应用的一个不利因素。
2)纠错困难资料稀缺
KODU的编程模式虽然非常简单,但若出现错误却也很难发现,KODU并不会给予一定的错误提示,这为学生自主探索带来了一定的困难。且由于KODU的相关辅助中文资料稀缺(笔者目前能找到的仅有华东师范大学王荣良教授出版的两本教材及知网上不到10篇的论文文献),有时学生自主探索所遇的问题,笔者也无法解答,且无中文资料可寻,这一因素一定程度上也会阻碍KODU教学的推广应用。
3.2 问卷调查数据统计分析
本问卷数据来自三年级拓展课学生(共20人),问卷分为前测卷和后测卷两份问卷,前测卷在课程开始之前填写,后测卷在课程结束之后填写,下面对其中部分题目的调查结果进行统计分析。
3.2.1 学生学习情况分析
从学习意愿来看,所有的学生都对KODU的学习充满了兴趣,且基本也都愿意在未来继续学习;从学习难度来看,大部分学生都觉得KODU学起来很简单,只有极少数学生觉得“有些困难”。由此可见,KODU软件非常受小学年段学生欢迎,且教学难度符合其年龄段认知发展能力。
3.2.2 计算思维能力分析
笔者在前测卷与后测卷中设置了五题完全一样的计算思维能力测试题,在前测后未公布正确答案,前测与后测间隔时间为1学期,基本可以保证学生忘记原题内容,测试结果如下(每题平均分满分为1分)。
1)下面哪个选项的指令,能让“吃豆人”沿着图中的黄色路径,到达“幽灵”的位置?
2)下面哪个选项的指令能让“吃豆人”沿着图中的黄色路径,到达“幽灵”的位置?
3)要让“吃豆人”沿着图中的黄色路径,到达“幽灵”的位置,下面的指令中哪一步是错误的?
4)在北方寒冷地区,一到冬眠季节熊就会开始冬眠,这体现了以下哪种思维形式( )
A.并行 B.条件 C.事件 D.数据
前测平均分:0.5 后测平均分:0.7
5)颠三倒四(形容说话办事没有次序,没有条理)这个成语违反了以下哪种思维形式( )
A.顺序 B.循环 C.条件 D.并行
前测平均分:0.55 后测平均分:0.65
在测试中,前三题为程序逻辑题,后两题为计算思维在生活中的迁移应用题。可以看到第一题和第二题在学习了KODU后正确率明显提升,第一题甚至达到了100%的正确率,说明KODU教学对于计算思维有显著的提升效果。但第三题前测与后测的结果一致,且得分较低,分析其原因,虽然该题和前两题一样,考察的都是前进和旋转命令,但该题采用的是代码化的考察方式,和前两题直观图示的考察方式有所不同,因此推测为学生无法读懂程序代码,导致得分未发生变化。第四题和第五题后测的正确率比前测略微提升,说明KODU教学对于计算思维能力的迁移应用有一定的帮助。
4 结束语
综上所述,KODU教学对于学生计算思维能力的提升有着较好的效果,但限于三年級学生年龄特点,当问题以图示等具体形式提出时,学生可以解决,当问题以代码化等抽象形式提出时,学生较难解决;另KODU的教学对于计算思维能力的迁移应用有一定的帮助,但效果因人而异。考虑到计算思维这个概念非常庞大,且内涵丰富,可考虑设置不同年段学生计算思维培养分级目标,使之更符合学生年龄特点,更具有适切性。
总体来说,KODU是一款非常适合小学年段学生认知特点,适合培养计算思维能力的程序设计入门软件,在这个“编程要从娃娃”抓起的时代,为少儿编程教学提供了一抹亮色,值得广大教育人员实践研究。
参考文献:
[1] 曹磊.初中KODU编程课程的设计与开发[J].上海课程教学研究,2018(3):19-22,60.
[2] 杨艳艳.基于KODU的编程思维可视化教学实践[J].中国信息技术教育,2018(1):41-44.
[3] 王荣良,万璟.走近儿童编程教育[J].中国信息技术教育,2017(21):4.
[4] 曹磊.儿童编程课程的设计与开发——以Kodu为例[J].中国信息技术教育,2017(21):10-12.
[5] 张立新.不可错过的可视化3D编程工具——微软Kodu(酷豆)游戏实验室[J].中小学信息技术教育,2017(6):82-84.
[6] 邢晓俊.作为认知工具的平板电脑对小学生认知发展的影响研究[D].南京:南京邮电大学,2016.
[7] 陈久华,王荣良.小学Kodu编程课程中计算思维教学实践[J].中国信息技术教育,2015(23):15-17.
【通联编辑:唐一东】