经常有人问哪个编程语言最流行?这问题很简单,但是回答起来可没那么简单。 首先,我们需要弄清楚,为什么会有人问这样的问题呢? 通常来说, 这个问题多发生在大学生群体,因为他们面临着找工作的问题,所以试着寻找找好工作的技能。对于大多数人来说,在进入一个新的领域时之前,我们需要了解什么是最流行的。 而对于其他人来说,可能你本身是已经掌握了一种或多种编程语言的程序员,在你考虑学习一种新的编程语言时,会考虑一下当前最流行的编程语言作为参考。而对于要开发一个产品的程序员来说,也希望了解当前最流行的编程语言,因为他们所开发的产品需要能够迎合客户的环境和需求,显然支持流行的语言的 API 会被更多人使用。 甚至,就算是你想启动一个项目时,你也需要考虑是否选择一个流行的编程语言。虽然你首先要考虑的是这种语言能够满足你的需求,比如说如果用一个流行的编程语言你需要花费更多的时间和成本,而不那么流行的编程语言或许会更快捷和轻松,显然你还是会选择那个不太流行的但是如果各个方面都差不多,我想大多数人你会选择流行的那个,因为这样你可以找到更多的程序员,遇到问题也有更多的解决方案。 怎么才算是流行?那么,到底哪个语言是最流行的?其实回答这个问题并没有你想象的那么简单。重点是,你该怎么定义这个“流行”? 这个问题并没有一个一成不变的答案,不过在维基上有一篇文章提到了如何衡量编程语言的流行度。在这篇文章中,列出了几个衡量流行度的因素:
此外,你还可以考量如下指标:
甚至,你还可以增加一些其它的统计维度,比如根据国家和城市来统计,你知道在北京哪种编程语言最流行么?上海呢? 所以,这个问题的回答并不是一个简单的答案。 统计数据来源的不同虽然我们知道了流行度取决于多种因素,但是人们还是希望能够了解到底哪个语言比较流行,以此来指导他们的培训和公司的决策。 有一些网站依据不同的标准,公开发布了一些语言流行度指标。IEEE Spectrum对这些指标做了一个有趣的整合,它可以让你通过自行设置不同因子的权重来得到你自己的编程语言流行度排行榜。 Coding Dojo 也有一个图表,聚合了工作搜索引擎 Indeed.com 的数据;而有名的Tiobe排行榜一直使用搜索引擎聚合来计算流行度;PyPl则是根据谷歌来查看语言的流行度。 好吧,我明白了,那么到底那种编程语言是流行的?为了帮助您找到方向,我结合了上面提到的几个来源,包括三个IEEE类别:“趋势”的语言增长,“工作”招聘Dice.com和CareerBuilder,“开源”表示开源项目的数量。 排名结果如下表:
如你所见,这些语言共分为三大类。第一梯队包括 Java、C、Python 和 C ,毫无疑问,这些名字我们耳熟能详。第二梯队包括 JavaScript、C#、PHP 和 Swift。剩下的两个是 Objective-C 和 R。 这给我们带来什么启发?第一梯队的语言Java、C、Python 和 C 都是非常通用的语言,它们并不局限于特定的编程平台或用途。 最值得关注的是第二梯队,它包括 JavaScript、C#、PHP 和 Swift。JavaScript 和 PHP 是主要的 Web 开发语言。C# 是微软的编程语言,而 Swift 是苹果新推出的主力语言。基本上来说,第二梯队是平台相关的。 那么这可以说明什么呢?如果你对编程有所了解,你就明白所谓编程并不仅仅是使用一种语言,更重要的是你要开发什么,比如说嵌入式系统、iPhone应用、Web 应用或者微软的服务器端应用等等。 对语言事实上只是一小部分。举个例子,无论你是多么的喜欢 Python 或者C,但如果你要为 WordPress 开发插件或主题,你只能选择使用 JavaScript 和 PHP。这与哪个语言更流行无关。 字里行间的发现或者你会注意到一些有趣的地方。 首先,Coding Dojo 的编程语言排行榜的第一名是 SQL,只有它一家是这样。你很少会单独在 SQL 里面编程,通常都是在其它的语言里面使用它来管理数据。所以,学会 SQL 很有用,甚至是必要的。 其次,苹果特有的编程语言在排行榜中排名很低,这或许和你的预期有所差异,因为 iOS 的应用是如此的流行。不过现实确实如此,如果你不是要开发你自己的应用的话,那学它们其实不如学习别的语言,因为并没有那么多的公司雇佣苹果应用开发人员。这就是 Swift 语言掉到了榜尾的原因,而 Objective-C 正在被 Swift 所替代,在前面也看到了它也处于榜单的后面。 C 家族的语言仍然是主流。Java、C 、C、C#,甚至 Objective-C 都是基于 C 的语言。如果你只想学一门语言,你可以从其中选择一个。我推荐你选择 Java ,它们可以为你打开进入 C 语言家族的大门。 以我的职业生涯的经验来看,不是特别复杂的场景的话,我大概可以用 20 来种语言来编程,通常只需几天我就可以学会一门新的语言。这是因为我所学专业就是语言设计,我也教编程超过了 20 年了。掌握这么多的语言对我帮助很大,因为我可以根据需要选择一种语言。这些听起来很难,但只要努力还是很容易实现的。 我的建议就是,如果你要编程,那么就去学习多种编程语言和各种框架吧。用编程语言去做点东西出来,编程不仅仅是一种智力锻炼,而且你可以实际用它做点什么出来。 计算机行业发展的非常快,所以掌握多种编程语言和框架很重要。C 语言依然历久弥新,而 Swift 虽然出现才几年却已登上了排行榜。你今天所掌握的或许不够你整个职业生涯挥霍,所以“怎样学习语言”要比“学习语言”重要的多,最好的办法就是多学几门。 我的推荐非常简单,无论是 Java 还是 C语言,选一个学习就好了。然后是 JavaScript,越来越多的基于 Web 的应用需要良好的 JavaScript 技能。再然后是 PHP、Swift 或 Python 中选一个,这个就要看你的工作种类了。当你在这三个梯队中都学会一门后,你就可以根据你的情况学习更多的语言和框架了。 河南日新核心价值观与您分享:诚信敬业高效务实责任自律 “以诚信敬业为先导、以高效务实为基础、以责任自律为保障”,这个价值观的核心是“先做人,后做事”老老实实做人,踏踏实实做事。 您值得关注! 本文转载于微信公众号: 河南日新(hnrixin),更多微信文章请扫描关注公众号: |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|