在2020年,TIOBE 官方近日发布的 4月编程语言榜单中,排名前十的分别是编程语言是:Java,C,Python,C++,C#,Visual Basic,JavaScript,PHP,SQL和R,这些语言已经工作的程序猿、攻城狮来说都不陌生。
值得注意的是本次榜单前20出现了一个新的编程语言,也就是图形化编程语言Scratch。
TIOBE是国外比较权威的开发语言排行榜,每月更新一次,依据的指数是基于世界范围内的资深软件工程师和第三方供应商提供,其结果作为当前业内程序开发语言的流行使用程度的有效指标。对世界范围内开发语言的走势具有重要参考意义。
编程作为现代社会需要的一项技能受到了越来越多的关注,其中就包括儿童这一群体,可能有人会对 Scratch 居然比不少专业的编程语言更流行觉得不可思议,毕竟这只是一门教孩子入门编程的编程语言。
但是,如果考虑到总共有超过 5000 万个项目是用 Scratch “写”出来的,而且每个月都会有 100 万个新的 Scratch 项目加入,这就很难再否认 Scratch 的流行。况且,既然计算机越来越成为生活中不可或缺的一部分,那么教孩子们学习编程的语言流行起来其实也就顺理成章。
一、Scratch是什么?
Scratch是一款由麻省理工学院(MIT) 设计开发的一款面向少年的简易编程工具。在2012年在中国得到普及,主要针对 8 岁以上孩子们的认知水平。接触了这门语言发现是很有趣的,以可视化的编程用搭积木的方式进行编程语言的学习。通过将编写好的代码模块以“块状”的形式呈现在操作界面中让使用者对不同的代码块进行移动与结合从而实现控制脚本对象行动的目标,极大地方便了使用者去发挥自己的创意创新能力,也利于他们去创作出能展示自我个性和想象力的作品。比起大学时期所学习的那些高深难懂的代码是更有趣也更容易懂,易于孩子们使用,且能寓教于乐。
Scratch3.0版本,界面更加清晰简洁
Scratch1.0在2007年第一次公开发布,随后在2012年又推出了Scratch2.0版本。而Scratch支持多国语言则让软件得以在全球范围内被广泛快速的使用与传播。如今在时隔6年之后,麻省理工学院媒体实验室的Lifelong Kindergarten Group在2019年的1月初正式推出了Scratch3.0。
麻省理工学院媒体实验室的LEGO学习研究教授Mitchel Resnick曾经说过:“当孩子们共同使用Scratch一起进行创造和分享彼此项目的时候,他们将学会创造性地思考,系统地推理和协同工作 - 这是当今社会中每个人的基本技能。”
少儿编程之父:米切尔·雷斯尼克(Mitchel Resnick)
麻省理工学院媒体实验室“终身幼儿园”团队主管,乐高教育全球董事。
事实上,Scratch的积木式编程方法很大程度上是受到了乐高玩具的启发,儿童在玩乐高积木的时候常常因为乐高积木灵活的组装方式,而不断地尝试排列出各种风格迥异的形状与结构。在Scratch的设计中也参考了这种富有趣味性的方式,以一系列可以拼接组合的积木式“代码块”将Scratch中的语法进行呈现。
二、Scratch有什么独特的特点?
1、对于孩子来说,以“代码块”形式进行编程会极大程度的避免他们编程时遭遇常常出现在传统编程语言中诸如语法晦涩难懂和被大量标点符号混用所困扰的问题。模块化的代码形式更容易实现零基础编程,因此会更加适合初次接触编程的人群。
2、同时Scratch还可以满足使用者在编写或修改程序代码的过程中随时验证和观察代码执行效果的要求,这也使得孩子随时都可以方便地拖拽调整代码模块组合从而实现脑海里的想法或完成自己作品的迭代。这实际上意味着孩子能够以更加容易的方式看到自己的成果并收获成就感,进而驱动自己继续去进行更复杂的挑战,形成长期热爱。
在Scratch的开发者看来,用更具有交互性的拖拽方式排列组合代码,不仅省去了编程时添加标点符号的烦恼。即使是在遇到问题的时候,使用者也可以轻松地回过头去拖动鼠标拆分代码块去系统地分析这个程序。这使得Scratch比起传统编程语言更便捷,也使得创作的整体过程对于儿童来说更为流畅。
3、当真正开始用Scratch进行编程就会发现Scratch的设计具有很强的交互性,在Scratch中抛去了传统编程软件逐行敲代码的麻烦,使用者只要对Scratch中已经定义好的模块进行拖动再根据一定的逻辑组合就能够像拼积木一样游戏化的实现程序快速编写与修改。
这种类似积木的代码模块总共有8个大类,在对这些“代码块”进行拼接时,要将不同类别的代码块进行组合需要掌握一定的使用规范。以while循环为例,它看起来与字母C非常相似,所以通过这种图形化的形式就能清晰明了的让使用者明白可以在它的内部填充其他的“代码块”。对于孩子来说使用富卡通化和清晰直观的积木式指令,可以促进自身更好的发挥想象力和创造力,创作出属于自己的动画或者游戏作品。
4. Scratch相比于其他编程软件更加注重协作和鼓励分享,除去PC端的软件,还有一些社区平台,供大家交流和分享作品,而其他人也可以下载修改作品再进行上传,实现不同创意的融合,诞生出新的作品。
三、Scratch 能让青少年收获什么?
在学习Scratch的过程中,除了最根本的培养逻辑思维与创造力之外,还能够提升孩子的理解、沟通能力,培养耐心和恒心,学会进行团队合作产出项目以及自主地解决问题等等一系列能力。
1、学编程能改善孩子的沟通技巧
有种比较流行的说法,就是学计算机程序员的都是呆子,但是事实却与之相反啊,因为每个程序员都是被要求必须具备极好的沟通技巧,这是因为大部分的应用程序都是由团队完成而不是个人完成的。分组工作,所以会要求孩子们以有效的方式进行交流。
2、孩子大脑敏感期能轻易造就编程禀赋
我们人类的大脑发育成熟要比身材各器官更早,所以人类的潜伏才能有一个敏感期,那么人类的个中国禀赋一般都是在这个敏感期内构成的,比如说,小孩子能够鉴别几十种色彩,而我们成人只能鉴别十多种色彩,这就是说明我们承认许多禀赋已经过了敏感期。所以人类思维逻辑构成是在7岁前后,就是说,逻辑思维要越早造就越好,那么我们少儿编程就是造就孩子思维才能的一个好手腕。
3、学编程可以增加人的信心和兴趣
孩子们可以快速学会使用技术,比如智能手机,电子游戏,通过自己的双手让电脑或者机器人听话,这是一件让人欢欣鼓舞的事情,开发应用程序和游戏是充满着复杂和挑战,如果他们知道这一点,一定会感到很惊奇,编程的另一个特点就是能够及时的得到成就奖励,当孩子们看到他们喜爱的技术取得一点进步,能够看到自己亲手做的软件在变得更完善一定会激动万分,所以,在不知不觉中,孩子就会投入大量精力去完成一项规模庞大的项目。
通过scratch编写的游戏
4、学编程能培养人的耐心和恒心
如果想用编程去做一个稍微像样点的项目(比如说一个小游戏),是需要很多的努力:几个小时或者几天时间是正常的。当然因为这个过程是充满乐趣的,所以并不会把人吓到。但是这个依然是需要很长时间的思考的。而能长时间静静地坐下来思考和实验对于现在(快节奏生活)的孩子来说正是他们极度欠缺的耐性。培养持之以恒追求一个目标的能力,能够使人终生受益。
还有,电脑是铁面无私的,错了就是错了,少了一个标点符号都不行。有些孩子爱发脾气,大人能忍就忍了,但是对于电脑来说,怎么发脾气都没用。而且因为电脑好玩,孩子还没法轻易罢手。所以会承认自己的错误,且自己改正过来。长时间下来,对于培养恒心也是大有益处的。
总之,让孩子进修编程的优点太多太多了;专一仔细、进步耐心、晋升形象逻辑才能、晋升整合和融会贯通才能等。爱玩是孩子的本性。不要畏惧孩子沉迷于游戏,症结是看家长如何来领导。
如今,越来越多的青少年开始尝试学习Scratch并在其中实现各自的创意想法,通过scratch来编写自己感兴趣的小游戏,在每件作品的背后实质是青少年自主学习能力和协作能力的体现。况且,学习编程也并不意味着未来就注定要成为一名程序员,学习Scratch可以当做是个人综合素养能力的一种培养,最重要的是让孩子能学会如何与计算机互动去进行创新,在日趋智能化的时代中做到良好的去表达自我,掌控生活中的新科技。