小朋友学图形化编程有必要吗?

由于我的工作岗位是程序员,所以经常有朋友向我咨询关于少儿编程或者大学生非计算机专业学习什么语言的问题,本来我是没什么看法的,经常被问,一来二去也形成了自己的观点,今天就小小地总结一下。

10 岁以下

首先是 10 岁以下,也就是小学二年级之前的小朋友,我个人建议是不要学习任何编程有关的东西。还是多玩玩,毕竟以后上学太苦了,有一个幸福快乐的童年很重要。

毕竟大多数中国人的一生,是需要童年去治愈的。

10~12岁

10~12岁,也就是小学中高年级阶段,此时有很多家长选择给孩子报一个少儿编程班,一般学习的是 Scratch (由于前段时间 Scratch 涉嫌辱华,官网被封,导致国内的培训班开始搞自己的魔改版)。

小孩子有兴趣,家里也有条件,可以学一学,我个人不建议强求,小孩子没兴趣就算了。

13~18岁

13~18岁,也就是中学阶段(初中高中)。这个阶段一般培训班会教 Python 这类比较容易上手的编程语言,学了也可以很快应用,比较容易获得正反馈。貌似也有为了参加国际比赛的教 C++。

我的建议是不管孩子未来会不会选择从事计算机行业,都不要学习 C++。

毕竟 C++ 是属于底层的编程语言,不仅专业度、复杂度、学习成本都高,哪怕是现在的大多数从事编程工作的专业人士,平时都用不到。所以投入回报不成正比,不要学。

Python 是一个不错的选择。

这不仅是因为 Python 上手快,而且应用范围非常广泛,从 Web 开发到桌面小工具,再到算法,都能做,并且 Python 也是学术界应用最广泛的语言之一,有非常丰富的数学库、可视化库,在数据分析统计以及算法研究方面非常强大。

我建议这个年龄段的孩子学习一下 Python。有条件的可以报个班学习,因为自己一个人学习一来容易走弯路效率低,二来可能走几次弯路容易放弃。报班可以提高学习效率,一群人一起学习也更有氛围,更容易出效果。

其他语言(比如 PHP、Java、Ruby 之类)就不要考虑了,要么专业性太强,要么太小众,估计也没有哪个少儿培训班教的。

19 岁以上

19 岁以上,也就是大学阶段,虽然大多数人还是自称宝宝,但确实已经不是儿童了,我的建议是必须至少掌握一门编程语言。

我上大学时,非计算机相关专业必修 VB,计算机相关专业必修 C/C++ 语言,选修 C# / Java。所以实际上我们的教育制度已经强制大学生至少学习一门编程语言了,只不过程度不同而已。

不过国内的大学大都跟我们学校情况差不多,教材都比较老旧,课程也一直不变。前几年听说个别大学开始开设 Python 课程了,不知道现在情况是什么样的。

总之,我建议所有大学生都要学习 Python,至少掌握使用 Python 写几个提升效率的小工具,比如处理 Excel 表格、处理文本文件、数据统计数据分析之类的。一来培养一下编程思维,二来也可以掌握一个高效的跨平台的工具,这跟掌握 Office 使用同样重要。