我应该学习哪门语言?
- 2019 年 11 月 12 日
- 筆記
经常有刚入门的读者会问:
Java,C/C++,Go,Python这几门语言我该学哪个?哪个发展好?
在我刚接触编程的时候,想学一门编程语言,内心很是纠结,到底是学C++好呢,还是Java好呢?当时好朋友说Java就业好,我也就跟着去学了Java。
时至今日,回过头来发现,其实在往后的路上,语言变得越来越不重要了,语言现在只是当做一门工具来用,更重要的是与语言无关的通用知识(比如数据结构)、快速学习的能力以及业务理解能力。
学会了Java,然后去学Python,学C++,会发现很多东西是相通的。学起来就会快很多,很多时候,同样的东西,在不同的编程语言中,只是换了个名字而已。
下面的一篇漫话讲述了在不同的编程的语言中通用的编程概念,或许会解答有些人心中的疑惑。
本文想要探讨的一个话题是:作为一个程序员,如何看待这么多的编程语言?是不是要学习?该怎么学习?
其实很多人都有这样的体会,当你学会了一门语言以后,再去学习新的语言,难度会大大降低,因为很多概念是一样的, 只是换了一种包装形式。
但是每一门语言都有自己独特之处,比如Ruby可以轻松地在运行时“打开”一个类,对这个类增加行为,还有method_missing的处理,这种特性,让它特别适合去实现DSL,RoR的火爆也就不足为怪了。
所以学习一门新的语言,更重要的是关注它和你所掌握语言的不同之处。这些不同之处所涉及到的基本概念是有限的,本文就列出了一些。
另外,学完了一门新语言以后,如果项目中用不到,是无法熟练使用的,也有可能很快忘记那些语法,因为编程确实需要不断的练习,尤其是项目的历练,从这个意义上来说,学习并理解那些基本概念会更加重要。
本文的灵感来源于https://www.coderscat.com/how-to-learn-all-pl。