技术开发 频道

IEEE 2018编程语言调查向我们揭示了什么?

  【IT168 评论】编程语言是所有现代技术的基础,为了能够和编程语言的更新保持同步,开发人员、技术爱好者都不得不“实时”更新自己的编程技能。为了帮助大家了解热门的优异编程语言以及他们使用语言的江湖地位,有很多网站都在做编程语言江湖排行榜,例如TIOBE、Redmonk、StackOverflow、IEEE spectrum等等。

  其中,IEEE spectrum和StackOverflow每年都会做编程语言排名调查,而TIOBE是每月做一次,Redmonk是每半年做一次。IEEE spectrum和StackOverflow作为两个年度调查的提供商,Stack Overflow调查了来自173个国家的56033名程序员,而IEEE spectrum的调查综合了来自10个来源的排名:

  ·Google search of “X programming”

  ·Google Trends

  ·Twitter

  ·GitHub

  ·StackOverflow

  ·Reddit

  ·Hacker News

  ·CareerBuilder

  ·Dice

  ·IEEE Xplore Digital Library

  IEEE spectrum通过聚合不同来源的统计数据,期望产生最可信的排名,同时他还提供个性化的排名,其交互式的页面允许读者根据搜索趋势、工作趋势或开源社区趋势来进行筛选,甚至用户还可以修改每个维度的权重,从而实现极其个性化的排名。

  下图中我们列出了StackOverflow、Redmonk、TIOBE、IEEE spectrum和Packt Skill Up Survey

  5家公司的调查结果,排在前10位的编程语言分别是:

  从IEEE调查中,我们能看出什么?

  排名前三的 Python:Python已经连续两年在IEEE spectrum中名列前茅,它语法简单,易于使用,但IEEE spectrum却不是因为这个原因,才将Python排在前列的,更重要的原因是Python被列为嵌入式语言。

  发展神速的新生力量:Go语言从去年的第7位上升到今年的第5位,其速度、简单性、可靠性、跨平台能力、本机并发性、易于部署都使其成为了开发人员首选的云本机语言,同时这也助力器成为了增长最快的编程语言。

  雷打不动的Java,C ++,C,C#:由于其广泛的行业采用和成熟的社区,这些传奇语言仍然位列前五。此外,许多专业开发人员多年来一直是这些语言的忠实用户,并且很难迁移到其它新的编程语言上,这也使得这些语言能够保持领先地位。

  R语言真的在走下坡路:根据调查结果,R语言从6位下降到第7位了。R语言的下降与Python的普及有很大相关性,在数据统计和大数据方面,Python比R语言更灵活。

  IEEE调查中,有哪些出人意料的地方?

  Kotlin语言未包含在列表中:IEEE的调查列表中缺少了最近流行的Android开发编程语言 。在内部应用程序的开发中(控制台应用程序,OpenGL应用程序,线程套接字服务器等),很多程序员都在使用Kotlin,而不是Python和Java,而且Kotlin还简化了从Python到Kotlin的代码移植。

  IEEE列表中缺少许多有希望的语言:IEEE列表中缺少诸如Typescript、Dart之类的语言。Typescript是JavaScript的超集,缺少类型系统。Typescript的引入为Javascript添加了可选的静态类型。同样,Dart也是一种有用的语言,可用于编写前端应用程序,易于使用,并且不存在学习曲线。

  Matlab和汇编语言保持其位置: Matlab用于科学计算和数学处理,于1984年首次发布,是继汇编语言之后仍然保持在第11位的最古老的语言之一。Matlab广泛用于学术和研究,因此永远不会过时。同样,汇编语言是最古老的编程形式,它能排在第10位与开发人员有很大的关系,汇编语言能够在没有编译器的情况下,支持快速代码,并且是机器级编程的非常好的选择。

  Javascript不在前5名:作为Web前端开发中的主要语言之一,JavaScript在IEEE列表中排在第8位。

  对于IEEE调查,我们有哪些不认同?

  PHP不应该前10位:虽然PHP是服务器端编程最流行的语言之一,但是其他编程语言(如Python和Ruby on Rails)在与PHP相同的域中可以提供更加简单、有用和强大的编码语法和工具来与PHP竞争。

  Ruby有更多的缺点:虽然Ruby是第一个用于前端和后端开发的全栈语言,但学习曲线陡峭。在Ruby上集成第三方库很困难,鉴于目前市场上的多种选择,Ruby很难保持其地位。

  Swift正在从其位置上退出:Swift编程语言是Apple 为iOS、macOS、watchOS和tvOS 构建的。因为仅限Apple的开发环境,而开发人员正在转向多平台移动应用程序,如Microsoft的Xamarin,Apache Cordova和Ionic,这对Swift的用户社区影响很大。

  IEEE调查的局限性

  IEEE Spectrum 2018调查包括47种编程语言,虽然包含了最广泛采用和最少采用的编程语言,但也没有包含所有的编程语言,其列表中缺少当前流行的语言,如Kotlin,Dart,TypeScript,WebAssembly等。

  IEEE Spectrum的另一个限制是,它在不同的浏览器上显示出的结果完全不同。IEEE Spectrum的Stephen Cass表示:“我认为这是由于 不同浏览器中JQuery / JavaScript的实现方式的变化:TPL使用了大量的浮点数学,所以你看到的可能是由于精度差异导致的。而TPL的基础代码有五年之久,所以我们无论怎样检修,结果肯定会受影响。”

0
相关文章