小孩子学什么编程?

来自:Crossin的编程教室(微信号:crossincode),作者:Crossin先生

Python 之所以受到广大开发者的欢迎,有一大原因就是语法简单易上手。不过要单论“简单”,Scratch 笑了。


Scratch 是麻省理工学院(MIT)为儿童学习编程而设计开发的一款工具。使用者不用去记复杂的语法,甚至不需要会英语,就可以创建自己的程序、动画、游戏等作品。构成程序的命令和参数通过积木形状的模块来实现,用鼠标拖动模块到程序编辑栏,像搭积木一样就可以实现编程了。


比如常见的模块:



我们编程教室 Python 零基础入门教程开始有一个猜数字程序。如果用 Scratch 来写,那就是这个样子:



执行效果:



更方便的是,你不需要安装任何软件,直接在 Scratch 的官网上就可以编写和运行代码,也能看到别人分享的代码。官网地址:


scratch.mit.edu


之前有想让孩子学习编程的家长向我咨询:Python 和 Scratch 哪一个更适合小孩子学习。我的回答是:低年级的孩子建议学 Scratch,初中左右可以考虑直接学 Python。因为 Scratch 的图形化更能激发学习的兴趣,而 Python 的好处在于,以后可以拿来做点真刀真枪的项目,甚至养家糊口。


但其实在任何年龄,如果你不是那么急切地想掌握一门实用语言,Scratch 都是值得花时间尝试的。虽然它的初衷是给小孩子用的,但也完全适合一个对计算机毫无基础的人用来了解编程思想和开发流程。


你可以在 Scratch 官网上看看别人分享的作品,并不逊于其他语言:



前两天在 reddit 上看到一个帖子让我印象深刻:


大意就是:一个网友说,如果你完全没有编程经验,强烈推荐从 Scratch 开始入手。他自己就通过学习一阵子之后很快做出了一个自己的游戏,这给他继续学习编程带来了很大的动力。另一个网友评论说,有不少会一点编程的人会瞧不起 Scratch,觉得它算不上一门语言。但事实上,很多编程初学者因为搞不动变量、循环、函数等概念而放弃。而真正在编程时,我们 90% 是在处理逻辑和解决问题,而不是去生搬概念。如果从逻辑出发来教授编程,那么可能对于学习者来说是更合适的。如果你理解了程序背后的逻辑,之后再学习其他语言也是很容易的。


我赞同他们的观点。我一直不能理解网上那些热衷于争论某个语言好,某个语言有前途,你应该学哪个语言的人。可能他们从未“精通”过任何一门语言,只不过是熟悉某一类语法和接口罢了。每个语言都有各自的特性和适用场景,但本质是相通。


如果你是一个对编程充满好奇的新手,又苦于对满屏代码无从下手,不如抽一个周末尝试下 Scratch。这也是 Python 外的另一个选择,说不定能给你打开另一扇窗。




今天最后,还有一个福利:

送出三套小创客的第一课:给孩子的编程启蒙书


这是一套关于编程的科普启蒙书,但不仅仅是讲 Scratch,而是从计算机基础出发,涵盖八个主题,以熟悉的生活场景为切入,涉及从互联网安全、算法、App开发等概念。即使是从未接触过电脑的小孩子,也能从中获得对编程的理解。



这套书还有配套的网站,里面有更多可供尝试的游戏和操作:

www.blueshiftcoding.com/pages/kidsgetcoding



也可以通过前面提到的 Scratch 官网来自己练习书中的实例和游戏。

推荐↓↓↓
程序员的那点事
上一篇:每一个开发人员都应该懂的 UML 规范 下一篇:再再再谈996:「一地鸡毛」过后,程序员能否走出加班怪圈?