C语言占据榜首,但大数据类是最大赢家。

IEEE Spectrum的第三次“最受欢迎编程语言”交互式排行榜新鲜出炉。因为不可能顾及到每一个程序员的想法,Spectrum使用多样化、可交互的的指标权重来评测每一种语言的现行使用情况。

数据记者Nick Diakopoulos从10个线上资源中选取了12个指标,这其中的每一个都能反映某一种编程语言在某一方面的受欢迎程度,加权这些指标就能得出一个排名。

何为“交互式”排名?

因为我们每个人都可能会看重不同的东西,比如大众最热衷在开源代码中使用什么语言?哪种语言的客户需求量最大?Spectrum的“交互式编程语言排行”让用户可以根据自己的喜好调整不同评价指标所占的权重,从而得到所需的排名。

用户还能根据自己的需要过滤榜单中的结果,例如我们可以选择只显示用于嵌入式系统和移动终端的语言。当然,用户既可以定制榜单中的每一项权重,也可以使用榜单预设的评价方案。

榜单中的默认预设是根据IEEE成员的平均兴趣权重来设定的,那么2016年Spectrum评选出的排名前十的编程语言都有哪些呢?

在连续两年屈居亚军后,C语言终于替代了Java榜首的位置。放眼前五名,Python和C++在3、4名上互换了位置,C#跌出前五,其位置由近几年上升势头迅猛的R语言所取代。近年来,包括R在内的大数据类编程语言总体呈现出一种上升趋势。

谷歌和苹果在榜单上同样你追我赶,最新的榜单显示谷歌的Go语言击败了苹果的Swift并杀入前十,但swift的上升同样不容小觑,其今年排到了第11位,相比于去年上升了5个排名。值得一提的是,去年曾有若干新兴编程语言和Swift一起初涉榜单,但今年却不见了它们的踪影。

其他引人瞩目的变化包括Ladder Logic,它从去年的39名上升到了今年的34名。LadderLogic用于PLC(可编程逻辑控制器),尤其是在工厂中的PLC上应用较广。通常人们认为编程语言在制造业中无利可图,然而Ladder Logic的成功揭示了编程语言在制造业应用中的巨大商机。

另外HTML仍然流行,今年排名上升到了第16位,之前有用户甚至还在担忧其是否能入选榜单(为准确起见,我们秉承着实用至上的原则,并且将编程语言定义为一种给计算机下指令的特殊语法——就算这种语法只是用于数据的结构化——我们并不要求编程语言是图灵完备的)。

在退步名单里,最出人意料的当属Shell的衰落(Shell是一种统称,指对脚本的直接创造,通常为系统管理员所钟爱,常见的有bash shell等),其下降了7个名次落到了第19位。这种趋势或许反映了用于云端数据中心的复杂系统的发展壮大,但现在我们还不能妄下结论,我们还需要观察下一年的排名来确定这种趋势是否会持续,抑或仅是一种统计学上的偶然结果。

注:

IEEE Spectrum:一本IEEE(美国电气电子工程师学会)出版的旗舰杂志,其中文版名为《科技纵览》,旨在探讨未来技术发展趋势及其对社会和商业的影响,主要内容为报道国际航空航天、计算机和电信、生物医学工程、能源和消费电子等领域的最新技术进展和成果。

PLC:可编程逻辑控制器,是一种采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、计数与算术操作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程。

图灵完备:Turing Completeness,一切可计算的问题都能计算,这样的虚拟机或者编程语言就叫图灵完备的。

 

最受欢迎编程语言又是谁?C语言居首,大数据赢了的更多相关文章

  1. Spark GraphX宝刀出鞘,图文并茂研习图计算秘笈与熟练的掌握Scala语言【大数据Spark实战高手之路】

    Spark GraphX宝刀出鞘,图文并茂研习图计算秘笈 大数据的概念与应用,正随着智能手机.平板电脑的快速流行而日渐普及,大数据中图的并行化处理一直是一个非常热门的话题.图计算正在被广泛地应用于社交 ...

  2. R语言和大数据

    #安装R语言R3.3版本会出现各种so不存在的问题,退回去到R3.1版本时候就顺利安装.在安装R环境之前,先安装好中文(如果没有的话图表中显示汉字成框框了)和tcl/tk包(少了这个没法安装sqldf ...

  3. C语言实现大数据除法

    本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数.你需要输出商数Q和余数R,使得A = B * Q + R成立. 输入格式: 输入在1行中依次给出A和B,中间以1空格分隔. 输出格 ...

  4. R、Python、Scala和Java,到底该使用哪一种大数据编程语言?

    有一个大数据项目,你知道问题领域(problem domain),也知道使用什么基础设施,甚至可能已决定使用哪种框架来处理所有这些数据,但是有一个决定迟迟未能做出:我该选择哪种语言?(或者可能更有针对 ...

  5. 2013年6月编程语言排行榜,C语言位据第一位

    2013年6月编程语言排行榜,C语言位据第一位 C语言是很多主流开发语言的母体,.NET的底层,Java的底层都是C开发的,虽然很多新语言来势汹汹,但究其根源,都脱离不开C语言

  6. Atitit.5gl 第五代语言编程语言 PROLOG教程  人工智能语言的标准 与实现

    Atitit.5gl 第五代语言编程语言 PROLOG教程  人工智能语言的标准 与实现 1. 第五代语言就是自然语言又被称为知识库语言或人工智能语言,1 2. 人工智能语言特点2 2.1. 试探法2 ...

  7. [转]大数据时代,python竟是最好的语言?

      随着大数据疯狂的浪潮,新生代的工具Python得到了前所未有的爆发.简洁.开源是这款工具吸引了众多粉丝的原因.目前Python最热的领域,非数据分析和挖掘莫属了.从以Pandas为代表的数据分析领 ...

  8. Atitit 编程语言知识点tech tree v2 attilax大总结

    Atitit 编程语言知识点tech tree v2 attilax大总结 大分类中分类小分类知识点原理与规范具体实现(javac#里面的实现phpjsdsl(自己实现其他语言实现 类与对象实现对象实 ...

  9. 移动大数据时代最IN编程语言必读书单

    移动大数据时代最IN编程语言必读书单 这是一个快速更迭,快鱼吃慢鱼的时代.从IT 时代演变成 DT 时代,再到现在的智能时代.急速革新的各种新技术.新工具.新平台,需要程序员掌握良好的编程思想和学习方 ...

随机推荐

  1. 使用alien命令让deb包和rpm包互相转换

    OS version: CentOS7 / Debian9 发现alien这个命令时很惊喜,之前在debian上安装etcd找不到安装包感觉很不科学,有了alien命令事情一下就变简单了. 这里以et ...

  2. POJ 2235 Frogger / UVA 534 Frogger /ZOJ 1942 Frogger(图论,最短路径)

    POJ 2235 Frogger / UVA 534 Frogger /ZOJ 1942 Frogger(图论,最短路径) Description Freddy Frog is sitting on ...

  3. 【CF675D】Tree Construction

    题目大意:给定一个有 N 个数组成的序列,在此基础上构建一棵二叉排序树,求每个节点(根节点除外)的父节点的编号是多少. 题解:首先,根据二叉排序树的不稳定性,直接模拟构建二叉排序树肯定会超时,因此需要 ...

  4. 【CF61D】Eternal Victory

    题目大意:给定一棵 N 个节点的树,求从 1 号节点(根节点)出发,任意节点结束,且至少经过每个节点一次的最短路径是多少. 题解:首先考虑最终要回到根节点的情况,可以发现最短路径长度一定等于该树边权的 ...

  5. [收藏]:[算法]LRU和LFU的区别

    LRU和LFU是不同的! LRU是最近最少使用页面置换算法(Least Recently Used),也就是首先淘汰最长时间未被使用的页面! LFU是最近最不常用页面置换算法(Least Freque ...

  6. Java流程控制---个人参考资料

    前言:我写博客的目的很简单,很单纯,把自己平时学的东西,放到博客上,空闲的时间,就可以看看自己曾经看到过得东西. Java流程控制语句:判断结构.选择结构.循环结构 一.判断结构 判断结构包括if 分 ...

  7. git push --set-upstream

    我在本地建了一个分支wangxiao,开发完之后,提交代码 git add .git commit -m '注释'git push 出现下面的问题,这个意思是:当前分支没有与远程分支关联. 因此导致了 ...

  8. Dubbo学习笔记5:Dubbo整体框架分析

    Dubbo的分层架构 本文将简单介绍Dubbo的分层架构设计,如下图是Dubbo官方的整体架构图: Dubbo官方提供的该架构图很复杂,一开始我们没必要深入细节,下面我们简单介绍下其中的主要模块. 其 ...

  9. bzoj千题计划277:bzoj4513: [Sdoi2016]储能表

    http://www.lydsy.com/JudgeOnline/problem.php?id=4513 f[i][0/1][0/1][0/1] 从高到低第i位,是否卡n的上限,是否卡m的上限,是否卡 ...

  10. html5 canvas显示文字(写上5个字,纪念我那刚刚逝去的爱情)

    <script type="text/javascript"> window.addEventListener('load',eventWindowLoaded,fal ...