关于问题学校和机构都建议孩子放弃 Python 转 C++,我该如何处理?一共有 2 位热心网友为你解答:
【1】、来自网友【smokingmountain】的最佳回答:
作为一个 20 多年的程序员,各种语言都有深度使用的大叔告诉你残酷的现实,所有的想法都是出自利益!学校和机构建议 C++是因为这种语言严格规范,容易出考题,可以让你家孩子不断的学习,这是机构受益。但等自己工作第一要素是自己必须受益,开发快不快,资源多不多,这个 C++和 Python 及 js 没法比。从 2003 年开始第一次接触 python 至今,python 仍然是我的主要语言,就像身体和呼吸有想法就快速实现一遍。C++做底层开发会用到,在特定环境下必须用。对孩子而言,更好的应该是 python,更贴近自然语言,入手快容易学,编程重要的是养成逻辑思维,而不是炫技!
吐槽一下国内的考试,英语会说不就行了么?英国人来中国 4 级考不及格!中文系教授考不及格高考语文试卷。这些靠吸家长血的寄生虫,浪费家长的钱!浪费孩子的天赋!等工作了发现这玩意到底有什么用?!
补充一下,熟练使用一种语言后,再学习其它语言速度是非常快的,此时语言就是一种工具,再后面写文档就好,再再后面多出去转转回来口述设计要求就好[灵光一闪]
看到这个特别气,再再补充一段,这些年被我开除的不思进取的程序员,只会在 windows 下编程的程序员,学个新语言抗拒心理严重的程序员,懂语法但无逻辑的程序员。听同事说有些人去了培训机构教孩子编程讨饭吃。[打脸]
【2】、来自网友【编程蒟蒻】的最佳回答:
如果孩子要考信奥赛的话,目前只能学 C++。不参加信奥赛的话,学 Python 也可以。至于未来,等孩子工作后用什么语言,谁知道呢?没人可以预见未来。
我是个信奥赛老师,同时也教蓝桥杯。前者用 C++,后者用 Python,但其实在语言层面我都只教孩子们很少一部分,大部分的语法和特性我都不会教。因为我其实真正教的是算法,或者说是思考问题的方法。这些方法很多在计算机没出现时有已经有了,计算机和计算机语言的出现只是让这些算法能够在一个平台上更容易被模拟和实践。譬如动态规划,这货是第二次世界大战末期被数学家们提出来的,那时候第一台计算机也才刚刚诞生。如果未来孩子要从事金融领域的工作,动态规划是一项基础技能。而且在我的实践中,小学五年级以上的孩子进过训练都能牢固掌握这种基础算法。我给孩子们举过一个例子,假设你们登上一座海岛,发现岛上有很多宝贝,想通通带走,可是无奈船的容量有限,该怎么选择宝贝呢?怎么让带走的财宝价值最大化呢?没有经过这方面训练的人一般会认为,那简单,带最贵的呗,其实不然,如果财宝可以切割,譬如是金条银条,那么这就是一个贪心算法问题,选单位价值最大的带走。但如果财宝不可切割,譬如都是瓷器青铜器,那么就是动态规划问题,选最值钱的带走不一定是最优解。动态规划也可以用到金融领域,譬如如何高效的选取投资组合获得最大收益,也可以用到自驾游,如何在有限的后备箱里放进尽可能多的有用物品等等。除此以外,例如深度优先搜索算法,广度优先搜索算法等等在日常生活中也都非常有用。孩子们学习过这些算法会大幅度拓展他们的思维模式。这个和现在的基础学科的填鸭式教学完全不同。我自己就是深受其益。不只是我高考因此加了 10 分(其实不加也轻松考上),更是让我的学习如有神助。当时我的数学物理和化学成绩都是遥遥领先同年级其他同学,我自己当时也不知道原因,我的智商很一般。我从来不补课从来不做课外试卷,有空就钻进算法的世界里。
国家为什么几乎取消了所有高考加分的竞赛,仅仅保留了五大奥赛,就是因为这五大奥赛的训练确实对孩子的成长非常有用!但凡五大奥赛获得金牌的选手未来无一不是出类拔萃。
虽然信奥赛确实对孩子帮助很大,但我也不主张大部分的孩子去学习信奥赛。很多孩子语数外都已经学不过来了,对于这群孩子,还是放过他们吧,他们有自己的另一套成才的路径。对于学有余力的,与其在家里闲的无聊,那就还不如学点算法。
而计算机语言本身,C++也好,Python 也好,未来也许会有很大的变化,也许未来会被淘汰也未可知。(Rust 语言正在蚕食 C++的份额,Julia 语言正在蚕食 Python 的份额)我的原则就是会变的东西,大学之前,没必要去学。大学之前,把精力放在一百年不会变的知识的学习上,把精力放在能够一辈子受用的知识的学习上。