Scratch是专为青少年儿童设计的电脑编程语言,从零开始,用它你可以很容易的去创造交互式故事情节、动画、游戏、音乐MV等作品。学习Scratch,可以培养孩子的逻辑思维能力、激发孩子的创造力,会让孩子越来越聪明。6岁以上的孩子好奇心、动手能力最强,这个时期如果能够接触到计算机编程知识,不但可以减少孩子“接触计算机=玩游戏”的普遍现象,而且还可以激发孩子的创造性活力。
Scratch 编程语言是由 麻省理工大学 MIT 和 Google 主导开发的针对 5-12 岁儿童的可视化编程语言。只需要使用鼠标,学生就可以编写自己的故事书,动画片或者小游戏。 Scratch 是很好的培养学生的创新力、系统思维和协作的工具。正如 Scratch 的宗旨:
Scratch helps young people learn to think creatively, reason systematically, and work collaboratively — essential skills for life in the 21st century.
Scratch 不仅得到了 MIT 的支持, 哈佛大学也加入了 Scratch 的教育者培训, 致力于培养更多的利用 Scratch 来教学的年轻老师和创新课程。
对于我们要面向的对象(8-12岁的少儿)来说,Scratch跳过了高级语言中那些繁难的概念和语法,用图形化的表现和拖拽的交互来完成编程的核心逻辑和成果交付,既能解决学习曲线过于陡峭的问题,还能让学习的过程不枯燥,并更及时地获得结果反馈,非常适合他们这个年龄阶段的心智水平和认知能力。
至于为什么要从Scratch开始作为阶梯再缓慢过渡到高级语言,不如让我们再来了解下8-12岁这个年龄段孩子的特点。
近代最具有影响力的瑞士儿童心理学家 让·皮亚杰(1896-1980),把少年儿童的认知发展按照年龄划分为了4个阶段,而这同时,也构成了我们L0-L5课程设计所对应的理论依据:
前运算阶段的标志是符号功能的出现。这个阶段的儿童的语言能力,以及玩耍时把棍子想象成枪的“假装”能力,都是符号功能的体现。
但“前运算阶段”的儿童对于守恒和可逆性这样的逻辑运算的理解是有限的。
而在“具体运算阶段”,儿童已经迅速获得了认知操作能力,并能运用这些重要的新技能思考事物。具体运算思维表现为守恒的理解、关系推理的理解运算顺序性的理解。但是,具体运算阶段的儿童思维是有局限的,因为他们只能把运算图式应用到真实的或可以想像得到的事物、情境或者事件上。
因此,在编程教育中,往往最早在“前运算阶段”的后期,也就是6-7岁左右,并不会让儿童直接接触到逻辑和关系推理的概念。而是通过序列(Sequence)来让儿童理解基本的因果关系。
同时,由于“具体运算阶段”的儿童的思维只能映射到具体的事物上,所以高级编程语言中的抽象逻辑、语言和教学方法是很难为这个阶段的儿童所接受。Scratch就很好地解决了这个问题。通过可视化的“积木”形式,儿童可以很轻松的编写自己的游戏或者动画书。在Scratch中,儿童很容易把具象的结果和程序所对应起来,这样就很好的避免了高级编程语言如C、C++等低反馈的学习流程。
所以针对7-11岁的儿童,Scratch的可视化语言可以很好的帮助学生学习基本的逻辑、关系推理、数学的概念,同时避免过早的接触到“形式运算阶段”之后才能理解的抽象的演绎推理。
少儿编程主要是通过编程思维培训来激发孩子的创造性思维能力,培养孩子的逻辑思维能力和动手能力。毕竟孩子还小,所以寻找适合孩子学习的方式才是最好的,此外学习少儿编程还是有助于文化课的,因为涉及到很多跨学科的东西,数学、物理等。
如今大部分少儿编程机构都是通过制作小游戏,小动画,小工具之类的方式来教孩子一个程序背后的逻辑。对于孩子学习少儿编程来说,家长首先要明确少儿编程学习的目的是什么,孩子学习少儿编程的目的并不是让孩子们将来成为一名技术超群的程序员,而是要他们学会编程思维,提升未来的竞争力。
儿编程课程的目的是让孩子能够通过系统的学习编程,结合所学的各科知识,重新认识世界,通过编程解决一些实际的问题,通过创作作品来表达自己的想法。而最新的少儿编程课程也会结合一些智能硬件,让孩子在系统学习编程的同时也一样锻炼了动手能力。
编程培训主要是训练孩子的逻辑思维,强化处理问题的综合能力。