• 孩子学编程,作为教育者该如何选择编程语言


      我最常被老师和家长所问到的一些问题是:我应该选择哪一种编程语言来教孩子编程呢?坚持选择像Scratch这样的图形化编程语言作为开端很重要吗?应该在什么年龄转换到学习代码编程呢?还有我应该如何在Python,Java,还有JavaScript之间选择呢?

      经过将近10年,对成百上千个学生教授编程,我经常出席各种会议,或为刚接触计算机科学的老师举办讲习班。许多老师都是第一次尝试在他们学校里建立计算机科学课程,所以他们对于选择编程语言的谨慎,是可以理解的。除了试图找出最适合他们学生的东西外,教师讲授的内容还必须在授课舒适度,以及校园、学生、家长四者之间取得平衡。

      那“合适”的编程语言,真的存在吗?

      编程语言不是重点,编程中的概念才是!

      就像你猜的那样,答案自然是否定的。编程语言不是重点,但教导孩子如何利用编程去解决问题才是重点。理解如何一步一步地建立算法,从而搞定作业,再想出最佳的思路来编写代码,这可能才是最困难的部分。

      学习相当少量的关键词和特定编程语言的简单语法很简单——比学习一门真正的口语语言要容易得多!相比而言,为了独立完成编程,必须了解编程中变量、列表、条件、循环,还有函数中的基本概念,然后才能知道何时,何地,如何使用它们将算法转换为代码。

      一个学生一旦掌握了以上这些概念,并且以一种语言编程成功,这时再用另一种语言来编程就不难了。转换编程语言并非打个响指一样容易,但确实可以做到。

      话说回来,掌握的第一种编程语言会改变将来思考和编程的方式吗?学习当下行业里最流行的语言重要吗?

      2018年美国热门编程语言Top10【图源: YoungWonks】编程语言变化不定,你终将适应。

      编程语言的流行度会变,没有人敢保证我们今天教会孩子的东西,在他们进入职场的时候还适用。我学习的第一门编程语言是Pascal(对,你可能得百度一下)。

      多年以来,我使用过不同的设备来学习不同的语言——其中不乏一些晦涩难懂的。在作为教育工作者的这10年里,我学习了Logo,Scratch,Processing,JavaScript,Arduino和Python的一大堆知识,好让我能在课堂上大展拳脚。

      6年前,我建议孩子们从学习Logo开始,一门最早应用于计算机科学教育当中的编程语言,而我相信,它就算放在今天,也依然是一个颇具影响力的选项。划重点:如果你能教会孩子们基本的编程概念,他们也能在一门语言上花上足够的时间,他们理论上就已具备了日后转换语言的基本条件。

      这还有一条经常提到的问题:我们总是应该优先教会孩子图形化编程,而非代码编程吗?

      图形还是代码?

      差不多10年前,在一节六年级数字设计课上,我开始使用Scratch,一门也许是最流行也是对孩子最友好的图形化编程语言。我随后将这门编程语言拓展到所有年级。我对不久前刚发布的Scratch 3.0中新功能感到兴奋——尤其是文字转语音和文字翻译这两个拓展功能。

      图形化编程的出现,极大减轻了青少年对编程的挫败感,诸如漏掉一个逗号或者忘了把右括号补上之类,反而让他们留有更多时间来理解当中的概念。另外,Scratch对于创新的鼓励以及在图像创作、声音编辑、分享和项目混制方面的功能优化,让它在成为各年龄段孩子首选编程语言上变得理所当然。较之被称为“编程语言”,它更希望被定位为一个绘图工具,一个动画制作工具,或是一个故事与游戏创作工具,这些元素综合起来,让Scratch变得更友好而不唬人。

      我发现在使用Scratch几年后,学生更愿意去尝试代码编程,因为他们觉得那意味着长大,只有“真正的编程”才会被行业采纳。我还见证过语言的转换中,有时只需要给孩子们回顾一下例如变量和循环的概念。

      我的中学学生们愿意为学习代码编程付出额外的努力,通常他们会放慢速度,以保证在处理Python,JavaScript,Arduino和Processing挑战时不犯下拼写和语法错误。不过,学生一旦能够通过刚开始时“我得看着点有没有打错字”阶段,他们常会爱上代码编程的灵活性和可塑性,尤其是当他们发现复制、粘贴,协作和修改在代码编程中有多方便时,偶会发出“也没想象中那么糟嘛”类似的感慨。

      每年夏天,我在Foothill College KCI计算机科学合作课程上,都会分别用Scratch和Python两种语言,为教师展示同一个项目。他们爱看把两种语言放一起比较。我们甚至会以伪代码,或者叫流程图作为开始,把完整算法在开始编程前先写下来。

      这是一个检查密码的迷你项目,它在流程图,Scratch,和Python中,分别长这样:郑州妇科医院哪家好:http://www.tjyy120.com/

      我课堂中的老师和学生在没接触过图形化编程的前提下,都能轻松学习Python,这说明好项目在前,从代码编程开始学习同样行得通。

      是什么让一门编程语言,变成适合孩子学习的编程语言?选择一门语言的标准是什么?

      虽然知道教授编程,更多是关于它的概念,你也知道不需要再为作出完美的第一次选择而慌乱,但问题依然没有得到解答:什么因素让一门编程语言成为孩子学习编程的好选择呢?通常由以下几点来衡量:速度,应用,可用的库,行业支持。下面我再来说说我认为重要的几个标准。

  • 相关阅读:
    sql当前行数据和之前行数据相加减循环处理
    Sql 查询库、表、列名的语句
    sql 特殊字符替换
    pandas 篇
    JAVA学习--面向对象的特征二:继承性
    JAVA学习--super使用
    JAVA学习--方法的参数传递
    JAVA学习--可变个数的形参的方法
    JAVA学习--面向对象思想的落地法则
    JAVA学习--方法的重载
  • 原文地址:https://www.cnblogs.com/sushine1/p/10634955.html
Copyright © 2020-2023  润新知