儿童编程培训主要是培训些什么
也许大家对程序设计、程序员都有一些了解,但实际上真正了解儿童编程的并不多,尤其是儿童学习编程对TA的早期教育,究竟有多大的影响。
以Scratch为例进行展示(后面通篇默认都以Scratch为基础工具)。Scratch是MIT研发并开放的一个儿童图形化编程的工具平台。可以在web上进行操作和分享,也可以下载到计算机本地。儿童甚至成人都可以使用它,来制作动画贺卡,制作游戏,制作音乐,制作各种他们可以用编程完成的任务。非常的酷炫,所以也有人说,会编程的孩子未来就像摇滚巨星一样,在孩子他们的群体中。
Scratch是一个图形编程的工作方式,非常 适合儿童,但相应的它的编程语言设计,相比较专业计算机语言而言,就是一个简版——对于儿童起步而言,刚刚好。
孩子懂得这些指令的基本含义之后(他完全可以探索式的尝试,弄懂大部分简单指令的含义),他就可以把中间的指令拖拽到右边,享受他控制小猫咪的乐趣,创造一些活动场景和游戏的乐趣——这些就是编程过程。
所以这个儿童编程的过程,不是像我们软件开发工程师那样,对着符号化的计算机语言来工作。而是面向一个图形化界面,面向一个具有丰富角色和操作性的、能够让他控制全部的新游戏。儿童编程就像一个创世纪的游戏一样。
儿童编程对于教育的作用
三个层面来回答儿童编程对于儿童教育的巨大作用。
第一层:儿童编程有着丰富的基本技能内涵,可以在各个方面帮助到儿童。
第二层:儿童编程是一个学科融合的最佳平台(之一),可以提供跨学科的学习。
第三层:儿童编程可以完成很多高阶能力的培养,在未来公立教育中的地位也会不断提高。
儿童编程培养的基本技能
儿童编程涉及到的基本技能非常丰富,不仅仅是编程本身。我们前面说,就以Scratch为例,至少有如下四个方面的基本技能方向:
1.数学方面
第一个方面就是数学。儿童编程图形化编程,第一技能方向就是数学。我们前面注意到,儿童学儿童编程,首先注意的就是一个或一些角色在舞台上的行动——这其中就包括:
坐标系:舞台是一个以中心为原点的直角坐标系,x轴正方向为右,y轴正方向为上。通过(x,y)坐标点,来控制所有角色的位置。
数据类型:最常见的是整数和小数,即实数集(在Scratch中所有实数是一个数据类型),另外还有布尔类型(真或假)、字符串类型(一段文本)。
数据的比较:也就是数学中三种基本顺序,大于、等于和小于。
算术运算:加减乘除是四种基本运算,儿童在编程过程中,常常需要在具体的场景中来运用这四种基本运算。另外还有取模运算和四舍五入。
数学函数:在编程过程中,儿童将接触到一些基本的数学函数,包括取绝对值,三角函数,对数函数以及指数函数等。可以非常直观的通过函数图像的自动喵点画图及生活应用来理解它们。
几何图形:在编程过程中,一类常见的任务就是图形绘制。这个过程中,儿童将大量接触几何图形,并从坐标系中进行图形绘制和操控。
所以这里面有着大量的数学学科内容,而且,这些内容都在具体的问题和任务场景中出现,既包括基本算术和几何图形知识,也包括函数以及坐标系等中学数学核心概念。通过它们在具体任务中的应用,儿童不仅操控了这个虚拟世界,而且会切身锻炼到、应用到数学知识和能力。
2.逻辑方面
编程的基础,既有数学,也有逻辑。逻辑思维能力,是儿童发展的一个基本能力,在文理各个方向都是十分重要的基础。儿童编程,可能是第一次对儿童正式的、系统的进行逻辑方面的锻炼。
逻辑变量:起点就是逻辑变量或事件的真或假。真或假是逻辑世界的两个基本值。
比较逻辑:对于用比较判断的逻辑,是儿童有直接经验并可以学习的基本逻辑判断,大于、等于、小于三种逻辑判断。
事件逻辑:其次是事件逻辑,基于事件的判断,也是儿童比较熟悉的。儿童编程用几种基本的事件模式,来生成事件判断语句。在Scratch中都是以“触碰"为核心动作来构建的。