家长和老师们都意识到了这一点为孩子和学生编程的好处.在其他好处中,孩子们可以学习计算思维、解决问题,并为他们在一个越来越依赖幕后计算机程序运行的技术的世界中所需的技能做好准备。
对于孩子们来说,编码并不一定是乏味和困难的。目前有几种方法可以让编程变得像玩游戏一样有趣和吸引人。创造新的东西是令人兴奋的,给孩子们一种成就感。
7岁的孩子就可以通过使用游戏、应用程序、教授编码的互动网站、课程和训练营来学习如何编程以及编程是如何工作的。即使是更小的孩子也可以通过玩耍来学习编码的原理益智玩具还有专门设计来教授编程的棋盘游戏。事实上,这里不缺乏有吸引力的教育资源。
唯一的问题是从哪里开始最好。
答案取决于孩子的年龄、天资和兴趣。
孩子学习编程的最佳方法
年龄较小的孩子,大约7到11岁,可以通过学习块编程开始学习编程原理。块编程有一个可视界面,由按顺序拖放指令块组成。这是建立逻辑思维基础的好方法,比如创建序列、条件语句、循环、函数和调试。孩子们无需学习计算机语言的语法就可以为计算机创建程序或指令。
11岁以上的孩子,或者对编程有浓厚兴趣的孩子,可以学习更高级的基于文本的编程,在那里他们用实际的代码或文本使用实际的计算机语言创建计算机指令。
但要记住,每个孩子都是不同的。有些孩子花了大量的时间来学习概念,而另一些天生倾向于计算思维的孩子甚至在很小的时候就能轻松地学习。
虽然孩子们可以在没有父母帮助的情况下使用许多现有的资源,但重要的是不要给孩子学习编程施加压力,因为这会削弱这些资源的乐趣因素,编程将成为一件苦差事。
以下是教你的孩子如何编程的最佳资源:
学习模块编程- 7到11岁的孩子(或更小)
网站
- 刮伤-由麻省理工学院(MIT)为7岁以上儿童开发的Scratch是一种简单的可视化编程语言,孩子们可以通过拖放大块的块来模拟计算机程序的结构。然后,只需点击一个按钮,程序就会运行。对初学者来说很容易学。孩子们不需要学习计算机语言或通过文本输入编程。让孩子们着迷和有趣的是,五彩缤纷的卡通人物由程序控制来创建动画,包括各种图像和声音。有了Scratch,孩子们能够创造游戏和故事。注意:为了让孩子们的体验更有趣,你可以将它与“超级Scratch编程冒险”

Scratch for Windows
- 爱丽丝Alice是另一个向孩子们介绍编程的优秀工具。与Scratch类似,Alice也使用了厚厚的指令块,孩子们可以拖放这些指令块来创建一个程序。它有效地教会孩子们面向对象编程的概念,而不需要过多的代码。不同之处在于,孩子们可以使用3D图形来创建动画、故事和游戏,并在网上分享。如果您的孩子觉得3D环境更有吸引力,那么Alice是更好的选择,作为他的编码入门。

爱丽丝编程
- Tynker- - - - - -Tynker与《Scratch》和《Alice》的相似之处是,孩子们在视觉上使用代码块来创建有趣的动画,并玩一套游戏。它与其他两个网站的不同之处在于,Tynker指导孩子完成课程。然而,它是一个商业产品,旨在销售这些课程。此外,Tynker不仅基于网络,还可以在平板电脑和智能手机上使用。

Tynker编程图片由Kevin Jarrett拍摄
从Flickr
- 块-这是另一个基于块的可视化编程工具,但更像是一个可视化编辑器,最适合年龄较大的孩子,10岁及以上。当孩子们使用块创建程序时,他们会在右侧面板中看到它被翻译成他们选择的编程语言——包括Javascript、Python和PHP。这是从块编程到文本编程的一个很好的过渡,因为它向孩子们展示了如何将块转换成实际的编程语法。
- GameSalad(Mac OS, Windows) -对于想要为Android, iOS和网页制作游戏的孩子,GameSalad是一个付费平台,它还使用可视化编辑器,在在线支持的帮助下教授编程概念,游戏设计和数字媒体创作。
游戏和应用
这些都是顶级的游戏和应用程序,教你的孩子如何通过视觉上的拖放块编程的基本原理。这一切都是关于参与,现在还没有必要学习一门真正的编程语言:
- ScratchJr(Android, iOS, 5 -7) - ScratchJr与Scratch的不同之处在于ScratchJr不要求孩子有基本的阅读技能来介绍编码。这是一种非常简单的方式,让他们在更小的时候学习编码,但它仍然使他们能够创建自己的互动故事和游戏。就像在Scratch中一样,孩子们把图形编程块拼凑在一起,让角色移动、跳跃、跳舞和唱歌。孩子们可以在绘画编辑器中修改角色,添加他们自己的声音,甚至插入他们自己的照片,然后使用编程模块使他们的角色变得栩栩如生。

孩子们使用ScratchJr App(照片来自Flickr)
- 跳房子(iOS, 7 - 10) -也是一个简化版的Scratch,教小孩子编写代码来创建游戏。
- 移动乌龟(iOs,适用于10岁以上)-这款iPhone游戏通过一个以可爱的乌龟为特色的彩色图形卡通环境来教授基本的计算思维。孩子们阅读说明,并尝试通过移动屏幕上的海龟来完成任务。
- Lightbot编程谜题(iOS, Android,年龄9岁以上)-这是一个编程益智游戏,教的概念,如计划,测试,调试,过程和循环,同时有乐趣让机器人点亮一切在一个回合。这款游戏通过让孩子们解决谜题,向他们介绍循环和if-then语句等概念。
- Kodable(iOS,适合5至8岁)这款iPad游戏向孩子们介绍了编程概念,如条件、循环、函数和在解决迷宫时调试。一切都是视觉化的,还不知道如何阅读的孩子也可以玩。游戏的目标是将命令拖放到指令集中,引导一只绒毛穿过Smeeborg星球上的迷宫。
- Roboozle机器人(网页,iOS, Android, 6岁以上)——益智游戏与编程有很多共同之处。Roboozle Droid通过让孩子们使用箭头和彩色瓷砖引导机器人通过一系列迷宫来教授基本的编程技能。孩子们编写的函数一开始很简单,但随着循环、堆栈和递归的使用,函数变得越来越复杂。
- 机器- (Android, iOS, 8 - 14)。在这款益智冒险游戏中,玩家使用编码原理修复坏掉的机器,通过使用机械部件作为编程概念的隐喻来教授逻辑思维和编程技能。
- 儿童编码游戏-在玩耍中学习编码(Android, 5-8) -这个应用程序包含11个适合孩子的编码游戏,如小消防员和冰淇淋时间,将教会他们排序,循环和函数。它有丰富多彩的卡通动画,年轻的孩子会发现吸引人。
- 应用程序发明家(Android, 10+) -在这个最初由谷歌创建,但现在由MIT维护的应用程序中,新人学习使用类似Scratch的拖放图形界面在智能手机上创建Android软件应用程序。
从基于文本的编程中学习- 11岁或以上的孩子(或有高天赋的孩子)
网站
- CodeCombat(Web) -孩子们通过玩有趣的角色扮演游戏(RPG)来学习编码课程,他们扮演巫师,使用代码对英雄和敌人施放咒语。孩子们在打败食人魔、解决迷宫和升级的过程中学习Python或JavaScript。它包括单人游戏和多人游戏组件。
- CodeMonkey(Web) -通过玩一个有趣的在线游戏来教授真实世界的编程语言,编程一只可爱的猴子从偷香蕉的坏大猩猩那里夺回所有的香蕉。孩子们通过解决各种逐渐具有挑战性的谜题来学习编码,并在正确的时间提供正确的指导。
- Codeacademy在这个网站上,孩子们可以免费选择学习哪种编程语言,但付费选项可以让用户获得个性化的学习计划、测验、现实的项目和顾问的帮助。这个互动平台对于准备编写真实程序的孩子来说是一个很好的下一步,他们可以选择完美的初学者编程语言,如Python, HTML和Javascript。
- 可汗学院(Web) -一个免费的网站,充满了伟大的,吸引人的教程,让孩子们学习如何编码。从计算机编程页面()向孩子们介绍“什么是编程”,然后学习JavaScript和SQL概念。
其他编程网站(适合所有年龄段)
- Code.org(Web) -来自非营利网站的一个伟大的编程学习资源,其目标是扩大在学校学习计算机科学的机会,并增加女性和代表性不足的少数民族的参与。它包含了各种编码课程和教程,吸引了年幼的孩子和初学者,包括一小时的代码活动,学生在短短一小时内被介绍到编码。它还鼓励程序员协作和分享。它是免费的,并得到捐助者的支持。
- 用代码制造谷歌的这个项目旨在鼓励女孩从事计算机科学的职业。该网站通过拖放图形对象向孩子们介绍计算机科学概念。虽然该网站主要包含初学者项目,但它也链接到其他资源,学习者可以在那里创建更高级的项目。
游戏和应用
- SpriteBox编码(iOS, Android) -孩子们玩冒险游戏,让他们编码。它从图标编码开始,然后慢慢发展到使用真正的Java语法。
- Codemancer(Windows, iOS) -在这款幻想游戏中,玩家通过编码在充满敌对巫师和仆从的幻想世界中穿行。它有一个女性主角,因此可能更能吸引女孩。它教授变量、条件和函数。
- Pygame(Windows和其他平台)-孩子们使用Python编程语言来创建游戏。Python是一种相对简单的编程语言,对于程序员初学者来说是很好的第一语言。它在现实世界中也非常有用。学习Python所涉及的许多概念与学习其他许多语言非常相似。Pygame让学习Python变得有趣。
棋盘游戏
编码的原则可以通过多种方式介绍给孩子们,让他们觉得最有趣。除了数字屏幕和在线资源,孩子们还可以通过玩专门设计的棋盘游戏来学习计算和逻辑思维。孩子们没有意识到,当他们玩游戏的时候,他们正在学习编程的基础知识。这些游戏吸引了那些喜欢社交游戏的孩子,因为玩棋盘游戏可以让朋友和家人加入其中。这也为增进感情提供了一个很好的机会。以下是一些高评分的棋盘游戏,它们可以训练孩子们的大脑编程能力:
- 机器人战争
玩家为机器人创造指令以赢得战争。机器人通过顺序逻辑执行代码。Java代码混合在英语命令中,所以所有讲英语的玩家都可以玩游戏。点击这里阅读更多细节。
- 机器人的海龟
-这款游戏的灵感来自Logo编程语言,适合4岁以上的孩子玩。孩子们通过玩“向前、向左、向右”的代码卡,在游戏板上口述机器人乌龟的动作来学习编写程序。当玩家的机器龟到达宝石时,他们就赢了!孩子们使用有限的语法、序列指令和调试。
- 代码大师编程逻辑游戏
-孩子们前往异国他乡寻找能量水晶。他们使用动作令牌创建一个程序,引导他们的化身收集地图上所有的水晶并降落在传送门。有趣的冒险游戏建立计划,顺序推理,解决问题的技能和先进的编码概念。
书
虽然没有游戏和应用程序那么有趣,但阅读和在书籍的指导下学习编程是最有效的方法之一。书籍可以提供比大多数在线资源更深入、更全面的知识。不过,对于那些积极主动、倾向于自学的学习者来说,通过书本学习是最好的。
以下是一些向孩子们介绍编程的好书:
- 你好世界!:儿童和其他初学者计算机编程
——一本广受欢迎、好评如潮的编程书,“12岁的孩子”都能读懂。它很好地介绍了编程是什么,做什么,有有趣的插图,并使用Python作为入门编程语言。
- Scratch编程游戏
-这是一个很棒的视觉指南,用于孩子使用Scratch作为编程入门。它使用“有趣的图形和易于遵循”的说明,让孩子们能够创建游戏和谜题等项目。
- Python For Kids For Dummies
Python是开始编程时最好的语言之一。孩子们通过学习Python语言和创建10个有趣的项目来了解计算概念。
- JavaScript For Kids For Dummies
-对于倾向于在网站和应用程序上工作的孩子,Javascript是另一种容易学习的语言。
设备
倾向于使用设备和电子产品的孩子可以通过使用可编程电路板来进行可以控制物理和数字世界中的物体的项目来加强他们的学习。它是对计算机工程、电子学和机器人世界的一个很好的介绍。
- Arduino -这个小设备由可编程电路板和软件组成。它使用计算机编写和上传计算机代码到物理板。Arduino设备可以让您轻松地通过代码控制物理组件。孩子们可以尝试编码,看看它是如何影响现实世界的。您可以通过官方入门套件介绍您的孩子使用Arduino。有一些书籍和网站向年轻人介绍如何创建Arduino项目。这是一个制作并编程了一个简单机器人的视频。
- 树莓派——这是一款信用卡大小的廉价电脑,可以用来创建有趣、实用的项目,同时还可以教授基础的计算机科学。像真正的电脑一样,树莓派可以执行许多台式电脑所做的事情。像Arduino一样,有很多书籍和网站教授树莓派项目(视频:你可以用树莓派做什么)
- 乐高头脑风暴-这也是一个硬件和软件平台,让孩子们使用我们都知道和喜爱的经典积木玩具构建可编程机器人。对于对机器人感兴趣的孩子来说,这是一个很好的方法。它使用EV3编程语言来操作孩子们的乐高头脑风暴机器人作品。
课程和训练营
总会有针对初学者和孩子的编程课程和训练营。咨询你当地的报纸,在谷歌上搜索“儿童编程训练营”,看看当地有什么。
最佳开始计划
当你的孩子通过操作编码块和玩简单的文本编码游戏来尝试视觉编程,从而训练逻辑和计算思维后,下一步就是学习真实世界的计算机语言。在决定接下来学习哪个项目时,要考虑孩子的兴趣是什么,他的天赋,以及语言的受欢迎程度,这样他们将来会受益。
以下这些编程语言不仅相对容易学习,而且在现实世界中也很实用和流行:
Python——学习Scratch的合乎逻辑的下一步。这是一种相对简单的语言,因为它与英语非常相似,但它足够强大和通用,让你的孩子做很酷的事情。这是学习人工智能和网络安全的一个很好的切入点。如果您的孩子正在使用Pygame,那么他已经熟悉Python了。
HTML和Javascript。HTML是设计网页的基本脚本,而JavaScript是使网页具有交互性和做一些很酷的事情的语言。这是学习编程基础知识的好方法,Javascript的一个子集很容易理解。因为每个人都使用网络,Javascript是最流行的编程语言之一。
Java -与Javascript没有任何关系。它是一种更高级的语言,具有中级技能的孩子可以学习Java作为他们的下一步。大多数大公司都使用Java,它是游戏编程、Android手机应用程序等的基础语言。
你的孩子可能想要考虑的其他项目有:
c#类似于Java,用于创建Windows应用程序。
Smalltalk是一种有趣的语言,旨在向年轻人教授编程。这是学习面向对象语言的最好方法。
一些激励孩子开始编程和受到启发的技巧
保持趣味性——在他们进入更严肃的文本编码之前,让他们享受使用视觉块创建游戏和其他有趣的东西。给他们一些可以发挥创造力的项目,让他们觉得有看得见的成果是一种奖励。
从逻辑构建开始——这比学习语法或编程语言更重要。
让你的孩子思考思考——不要通过提供答案来帮助他。
让他犯错误——编程有时是通过反复试验来学习的。