海淀妈妈们为何让娃直接学C++?Python与C++的区别及儿童编程入门指南

最近在旭狐网上看到一篇文章,大意是海淀的妈妈们嫌弃Python的低级性,准备让孩子直接上手C++。这让我这个写了15年代码的老程序员心生恐惧。我感觉自己随时都会被打死在沙滩上。我其实是非常支持孩子学习编程的,但是作为一个码农爸爸,我觉得还是有必要给海淀妈妈们解释一下什么是计算机编程,C++和Python有什么区别,孩子是否应该学习计算机编程。以及如何从开始编程到放弃编程。

海淀妈妈们为何让娃直接学C++?Python与C++的区别及儿童编程入门指南

什么是计算机编程

学习计算机编程简单地说就是学习如何向计算机发出命令。你说话,让计算机听懂,然后老老实实去做,这和你平时教育孩子的方式没有什么不同。但电脑却很听话。只要你解释清楚,它一定会如你所愿,比养娃容易多了。

当然,想要给计算机下命令,首先得了解计算机。我们日常使用的电脑、iPhone、iPad等其实都遵循“冯·诺依曼架构”,简单来说就是拥有CPU、内存、显示器和键盘。你用键盘向CPU发出命令,CPU和内存一起工作计算结果并将结果输出到显示器上。如下图:

但是CPU很笨,只认识两个数字:0和1。所以如果你想让他做一道算术题,你必须告诉他一串24位数字1000 0011 1100 0000 0000 0001他才能理解。无论你使用Python、C++还是其他编程语言,最终都会转换成这24个数字。是不是就像平时教育孩子一样,无论是中文、英文还是方言,都必须翻译成拳头,孩子才能听懂?

顺便说一下,这串24位数字叫做机器码。翻译成程序员能理解的语言,就是“ADD %EAX, 1”。在人类语言中,它的意思是“别再玩了,快速计算 x+1 等于什么”。 。

C++比Python更先进吗?

随着科技的发展,出现了很多编程语言,编程语言之间确实有高低之分,但并不是托尼在培训班上教的高低之分。

就像刚才提到的ADD %EAX,1,它被称为汇编语言,是一种低级语言,而Python和C++都属于高级语言的范畴。在刚才的例子中,它们都可以用同一个代码x+=1来表示,甚至还有些关联。 C++是在C语言的基础上“改进”的,而Python则是用C语言编写的。

那么Python和C++谁更先进呢?这个需要通过现场来回答。在数据科学和人工智能领域,Python是无可争议的王者,但在高频交易和网络游戏领域,C++可以说是当前的行业标准。对于编程领域的孩子来说,Python 在简单性和易于入门方面几乎没有竞争对手。

Python 有多简单?编写一个同样功能的网站,使用汇编语言,C++和Python的工作量对比约为1000000:3:1。这意味着什么?当Python程序员和女孩约会时,C++程序员刚刚加完班,汇编程序员当场死亡。

那么托尼先生为什么说C++比Python更先进呢?当然,是因为学同样的东西他可以收三倍的学费。越贵的就越高级,所以没有什么问题。

Tony老师可能会反驳说Python只是一种玩具语言,不应该被大一点的孩子使用。我们可以看一下2016年到2020年的编程语言流行度排名:

事实上,在这个世界上,无论是小孩还是资深程序员都在使用Python并且热爱使用Python。

Python 和 C++ 之间的真正区别是编译语言和解释语言之间的区别。简单来说,C++直接转化为0101供CPU运行,而Python则需要自带翻译器。这导致 Python 的运行速度比 C++ 慢大约 10 - 100 倍。但不用担心,当今的 CPU 速度非常快,您不会注意到任何差异。

我的孩子应该学习计算机编程吗?

至于你的孩子是否应该学习编程,如果你不参加中考或高考,你根本不需要学习。 Tony老师经常告诉大家,学习编程可以训练孩子的逻辑思维,让孩子数学更好。但事实恰恰相反。逻辑思维好的孩子学习编程更容易。

编程语言中用到的数学逻辑只有三种,条件判断、循环和递归。

条件判断

条件判断就是你告诉孩子,如果他想吃糖果,他必须先服从你。用程序来表示

如果听话:

可以吃甜食

别的:

直接吃拳头

循环

循环就是宝宝不断要你买玩具。买完这个再买那个。用程序来表示

当厌倦了玩具时:

向妈妈要新玩具

递归

递归就是孩子不断问你这是什么?比如指着天空问你这是什么?你说这就是太阳。他又问太阳是什么,你说太阳是星星。他又问什么是星星。你说恒星是宇宙中的一种行星。他又问什么是行星。你说行星就是行星。去和你爸爸一起玩吧。用程序来表示

def 问(xx 是什么):

如果厌倦了问:

回去和你爸爸一起玩

别的:

问(xx 是什么)

可见,递归和循环有些相似,在实际编程中递归和循环是可以互换的。

看到这里,你还认为少儿编程可以提高数学成绩吗?编程不会提高孩子的智商,也不能像弹钢琴或说意大利语那样用来炫耀。从功利的角度来看,这是不划算的。

编程的真正价值在于创造。您可以轻松创建完全属于您自己的作品,可以与朋友甚至全世界分享。这种创造产品的喜悦,这种被认可的成就感,这种一次又一次经历失败最终成功的喜悦,才是学习编程的真正价值。

所以,如果你的宝宝符合以下3个条件:

你对编程本身很感兴趣,并且有一定的了解。有一位真正懂编程的老师来指导你。您对孩子的编程期望不高。

我建议让你的孩子学习Python编程,因为编程真的很有趣,而且真的能给你一种成就感。

如何开始儿童编程

从我个人的经验来看,学好编程只需要两个条件:

学会带着目标逐字编写代码

学习编程其实是一个非常庞大的过程。你需要学习大量的编程语言、标准库、常用第三方库、网络协议、数据库、操作系统、数据结构、常用算法等,才能真正成为一名产品级程序员。程序。但对于少儿编程来说,如果学习编程语言本身,一点点标准库和第三方库,也可以做出一些有趣的程序。

因此,在开始编程时,最需要的是给孩子设定一个目标,让他通过一项任务来学习,比如写一个小游戏,或者让一个机器人跑起来。一旦你有了目标,你就可以开始逐步学习,如下所示:

学习蓝色部分后,你基本上不会做任何事情,但你会对编程本身有一个非常清晰的概念。大多数孩子都会到这里结束。学习橙色部分后,你可以实现有趣的小游戏,或者让机器人随心所欲地跑来跑去。您的孩子将会获得很多乐趣并获得成就感。绿色和紫色部分是给走专业路线的孩子们预留的。如果你高中毕业后仍然热爱编程,并且还有剩余的精力,可以开始学习这两部分。不过,即使你学完了紫色部分,也不代表你已经学完了编程。这是专业编码员的路线图:

学完这些,差不多就可以找到中级互联网编码员的工作了,而且职业还是比较辛苦的。行业变化很快,技术每天更新,工资都是加班,年轻人廉价又绝望。所以如果你真的想成为一名专业的程序员,你必须谨慎。作为一个曾经的码农,现在基本上都要靠Word和PPT过日子了。

总结

如果您确实坚持完整阅读本文,则实际上不需要此摘要。想偷懒的就去看实用资料吧:

不要让您的孩子从 C++ 开始编程。这样只会加速孩子放弃学习编程。学习编程不会提高孩子的数学成绩,也不会提高孩子的逻辑思维能力。大多数孩子最终都会放弃。不要对孩子抱有太高的期望。保持乐趣是最重要的。如果你的孩子有兴趣、能坐得住、有可靠的老师,他就可以开始用Python编程。

最后,对于想要入门儿童编程的家长来说,最重要的是给孩子设定目标,让孩子一个字一个字坚定地写出每一行代码。当你克服重重困难,成功运行这个项目时,你的孩子就会明白,所有的努力都是值得的。

祝愿每个孩子都能健康快乐成长,愿每个家长少一些焦虑,多一些自信。

你可能想看:
« 上一篇
下一篇 »

相关推荐

编程培训学费多少?不同模式、语言及机构收费大揭秘

2025年05月10日

79阅读

送你7款适合教孩子编码的免费编程语言,编程对孩子未来有多重要?

2025年05月10日

131阅读

未来科学家课程之Scratch编程:适合小朋友的热门编程语言介绍

2025年05月10日

82阅读

编程培训费用详情:学费区间、培训模式及相关费用情况

2025年05月10日

70阅读

少儿电脑编程的核心优势:实践学习、能力培养与未来准备

2025年05月10日

107阅读

儿童编程教育:培养计算思维,纳入学校教育,引领未来编程思维新风尚

2025年05月10日

89阅读