技术开发 频道

2017编程语言三季盘点:Java,不变的王者!

  【IT168 评论】程序员、加班、工资、编程语言、框架、工具这几个词语经常同框出现,各大调研分析机构更是对挖掘这其中的关系乐此不疲。在2017年的前三季度,各大针对编程语言和程序员的排行榜单数不胜数,彼此之间难免有所差异(数据来源及评估标准不同),笔者对前三季度各大编程语言榜单进行了汇总,快来看看这些榜单都传达了哪些信息吧。

  Java的强大:无论评选指标,稳稳占据各大榜单编程语言前三名!

  笔者综合了IEEE Spectrum 、TIOBE、JetBrains、IntelliJ IDE和制造商联合发布的开发者生态调查报告、Stackoverflow、Packt的《2017年程序员技能和薪资报告》以及IT168企业级在社交平台针对程序员发起的调查数据,这些榜单的评分标准和涉及人群(主要针对各自平台的程序员以及不同搜索引擎的关键字搜索频率)均有差异,但Java无疑是最大的赢家,任何一张榜单都稳稳占据着编程语言前三名的位置。

  众所周知,TIOBE榜单的结果更倾向于受欢迎的编程语言评选,主要综合了各大搜索引擎的数据。TIOBE近一年的榜单基本没什么变化,Java、C、C++是不变的前三名,即便Java已从一月份的17.278%下降至12.431%,但还是比其他编程语言的排名高出许多。未来一年,Java的位置可能还会如此稳固。

  在今年3月份StackOverFlow发布的调查中,Java以39.7%的票数在程序员最常用的编程语言中排名第三,而JavaScript以62.5%的票数高居榜首。

2017编程语言三季盘点

  在今年7月份由Packt发布的《2017年程序员技能和薪资报告》结果显示,Python、Git、Visual Studio IDE、Eclipse IDE、Java分类前五名,而Java是前五名中除Python之外的第二大编程语言。

  同月,IEEE Spectrum 排行中,Java位列第三位,但从该排行给出的分数来看,java的99.4与前两名Python(100)、C(99.7)相差不是很大。

2017编程语言三季盘点

  不久后,JetBrains,IntelliJ IDE和制造商联合发布了一项开发者生态大调查结果。据悉,这项调查自2016年底开始,共调查了超5000名程序员,评选出了14大主流编程语言。其中,Java以26%的票数稳居首位。

2017编程语言三季盘点

  笔者今年曾在社交平台上发起针对2017年最值得学习的编程语言榜单调查,国内数千名程序员参与调查,最终Java以40%的票数获得了第一名。

2017编程语言三季盘点

  可见,无论是受欢迎程度、常用性还是价值,Java都获得了大多数程序员的认可。虽然今年以来,有不少关于Kotlin与Java之间的争论,但即便谷歌大幅推进Kotlin,Java受到了一些版本更新推迟、新功能不被看好的影响,但还是编程语言中的佼佼者。

  舆论热点——Python、Kotlin、Go语言发展如何?

  由于人工智能的兴起,Python再度成为舆论焦点。虽然在各大榜单中的排名变化较大,但基本都是前五名之内,由于其易用性和学习曲线较短的特点,很多程序员倾向于将Python作为第二编程语言学习。但也由于这些特点,全球范围内的Python程序员薪资基本都维持在中等偏下的水平。

  虽然很少能在编程语言排行榜(除了新锐榜)前几名的位置上看到Kotlin的身影,但在Android应用程序开发领域,Kotlin已经和Java交战多时。作为谷歌官推编程语言,Kotlin上升势头十分迅猛。在近日发布的Realm Report中,实时移动平台提供商Realm指出,过去几个月内,使用Java构建的Android应用程序数量减少,而使用Kotlin的则增长了125%。这不由得让人想起曾经的Swift和Objective-C之战,Java在移动开发领域的位置可能会在未来有所变化。

  作为2016年TIOBE年度编程语言,Go语言今年显得十分低调。无论是榜单排名还是受欢迎程度,基本都与去年持平。但在年初StackOverFlow发布的报告中,使用Go语言的程序员薪资还是非常不错的。

  薪资排行榜,什么语言和什么领域“最贵”?

  年初的StackOverFlow的调查报告中,对全球范围内的编程语言以及不同类型程序员的薪资进行了全面调查,笔者这里就不再赘述了,直接上图:

2017编程语言三季盘点

2017编程语言三季盘点

  根据Packt发布的调查结果来看,情况基本是吻合的:

2017编程语言三季盘点

2017编程语言三季盘点

  近几年的薪资热门,早已不再是简单的程序员,而是与大数据、人工智能方向相关的程序员,这与目前市场趋势完美契合,并且这种现状短期内改变的可能性不大。

  编程语言中的“童子军”:倾向于解决特定问题

  今年以来,编程语言世界加入了不少新面孔,虽然目前尚未在各大排行榜中展露头角,但在特定场景和领域内深受欢迎。

  Simplicity-针对加密货币和区块链

  Simplicity是一种类型化组合语言,被设计为执行智能合约的低级语言,不适用于程序员直接编写,可部署在新的区块链应用中,包括sidechain和比特币。目前仍处于研发阶段。

  Tisp--新的函数式编程语言

  据文档显示,Tisp是一种具有隐式并行性和并发性的功能编程语言,它的目的是简单,规范和实用。Tisp评估程序每个输出(如打印字符串并向客户端发送HTTP响应)的并行并发。综合了Haskell、Clojure、OCaml、Python和Go五种编程语言的优势。

  Red——号称下一代编程语言

  准确地说,Red更像是一种“语言建构”,而不仅仅是“一种语言”。受到了REBOL的启发,Red的目标是建立世界上第一个完整堆栈语言,一种可以从系统编程任务到DSL高级脚本中使用的语言。

0
相关文章