儿童编程教育该怎么做？
和市面上其他兴趣爱好的培养不同，编程是一项创造性极强的思维活动，不仅需要孩子具备一定的数理逻辑，而且家长还需要了解计算机及相关学科的发展方向，否则孩子学编程也就是玩个新鲜，追个时髦而已。 这里，我们把常见的一些问题给刚入门的家长理了理。 ▍ 01我是不是应该让孩子去学编程语言？ 很多家长参加“编程一小时”活动，看到 Scratch 的反应是：玩个游戏就能学编程？ 在这我们首先要分清楚儿童编程语言和商业编程语言。 儿童编程语言不会打字的孩子也可以很快上手，创造出各种各样好玩的游戏动画获得成就感。积木块的程序代码可以避免孩子发生语法错误，从小就学会像程序员一样思考。常见的 Scratch、Tynker 等都属于儿童编程语言，它们都是用图形化界面、简单拖延代码块的方式教孩子学编程。 但是，对于青少年来说，如果以后真正想在计算机领域有所作为，只靠儿童编程语言显然是远远不够的，还是要过渡到商业编程语言的学习，通过参与一个个工程实例，学习真正的编程作品商业化运行。 所以，编程的启蒙阶段可以用 Scratch，等孩子到了小学高年级之后，可以去学习一些真正的编程语言，比如 Python。Python 是一款既容易学又相当有用的编程语言，语法非常简单，代码相当易读，很多国内外互联网的大公司的产品都或多或少都使用了 Python。 ▍ 02是不是只要玩玩游戏就能让孩子学会编程？ 现在，市面上有两种儿童学习编程的方式。 一种是脚手架模式，通过游戏闯关的方式，让孩子学习编程。就像造房子一样，通过脚手架辅助搭建。这些小游戏因为是图形显示，非常直观，很容易激发孩子对编程的兴趣。典型的代表如 Tynker、Codemonkey。 另一种是PBL模式，Project Based Learning 的方法。PBL专题式项目教学法强调以学生的主动学习为主，将学习与任务或问题挂钩，让学生完成任务和解决问题。通过做一个动画，做一个小游戏等 Project 来学习编程。典型的代表如 Scratch、APP Inventor。 但是实际编程教学中，脚手架的学习方式只能帮助孩子理解代码和指令的含义，我们不可能因为孩子喜欢一些游戏，就尝试将这些游戏作为入门学习的项目。孩子不但需要知道指令和代码的含义，更重要的是知道如何用代码来 create。 ▍ 03电脑编程和电脑美术是两个方向 我们可以看到有很多很炫很好看的 Scratch 作品，但那也许更多是体现了设计能力，而不是编程能力。也就是说同样是学习编程语言，家长得知道哪些内容是可以培养孩子的逻辑思维能力，哪些是培养孩子的创意能力和审美能力。 如果孩子希望未来在编程方面能有更大的发展，那么学好数学肯定是逃不掉的。如果孩子热爱动画制作，那么对美术的知识就得多学习。 ▍04让孩子抄别人的编程作品好吗？ 编程是一个实践性非常强的科目，需要学习者亲自动手练习，在实践中理解代码和指令的作用。当我们教孩子编程的时候，即便他们学会了顺序、循环、变量、函数等编程概念，但是从头开始编写一个新程序的时候，孩子还是不知道如何下手。 建议家长可以通过 Tynker、Codemonkey 的脚手架教学模式加强孩子对编程概念的理解。当孩子有一定基础之后，还是要多练习 Scratch。 Scratch 的好处就是面对空白的背景和角色图，孩子需要想好自己怎么添加和设置角色，怎么通过安排角色的动作达到最终的编程要求……更锻炼孩子的创造能力。 ■ scratch官方网站里可以看到全球各国孩子创造的作品，都可以remix 学编程还有一个特点就是，多拆别人的作品，学习和借鉴。Scratch 在这点上做的是其他编程软件很难做到的。 孩子的 Scratch 编程作品可以在社区分享，还可以 Remix 别人的作品，在 Remix 中孩子学会分解程序的实现步骤、分析别人的源代码，这就增加了孩子的“拆轮子”的能力。 ▍ 05少干涉，把鼠标和键盘交给孩子 当你决定教孩子学编程的那一天起，你就得做好让孩子尽情尝试的准备。可能你会担心孩子瞎点瞎碰，可能你很着急使用孩子鼠标的动作不对，还有可能你等不及孩子的反映...… 不管哪一种情况，你都得压下自己用手指去操作的冲动，不要去和孩子抢键盘。想要孩子像你一样熟练操作计算机，想想自己当初花了多长时间去练习，就知道该给孩子多长时间了。 ▍ 06给孩子挑选几本好的入门书 由于儿童编程并没有列入中小学的必修科目，相应的在教学大纲、教学目标上也就没有一个通用的衡量标准，市面上合适的入门教材也不多，这无形中让家长挑选合适的教材变成一件不太简单的事情。 这里提供两个标准供大家选择： 1）优先选择图文并排、彩色印刷的，可能你会觉得这书花里胡哨，但是这样的书孩子更容易阅读，毕竟孩子是消费者。 2）如果看到书上含有类和对象、数据结构、网络协议、SQL 数据库等主题的尽量不要选。 总之，编程启蒙阶段，既不要让孩子陷入技术细节，也不要让孩子只是停留在简单复制代码，像操作工机械完成手工制作流程一样，而是要注重整个学习过程，这样才能真正引导好孩子的学习。 想了解更多儿童编程资讯，欢迎关注公众号：创客超人