当前位置: 首页 > 编程日记 > 正文

Python再夺冠,上古语言COBOL大流行,IEEE Spectrum 2020年度编程语言排行榜出炉!...

整理 | 屠敏

题图 | 东方 IC

出品 | CSDN 博客

领域驱动技术,技术鞭策领域。

近日,IEEE Spectrum 最新发布了 2020 年年度编程语言排行榜。IEEE Spectrum 编程语言排行榜一年发布一次,截止到今年,该排行榜已经连续发布了七年。与其他榜单有所不同,IEEE Spectrum 可以让开发者自己选择参数组合时的权重,得到多样的排序结果。

在最新的编程语言排行榜中,IEEE Spectrum 通过综合 CareerBuilder、GitHub、Google、Hacker News、IEEE、Reddit、Stack Overflow 和 Twitter 八个来源 ,分析了 55 种编程语言的流行度,发布了 2020 年度编程语言排行榜。

Python 连续四年夺冠

近几年间,Python 的火热有目共睹。不仅在 IEEE Spectrum 编程语言排行榜中,在其他榜单如 TIOBE 上,Python 也位居前列。但对于很多从业者而言,Python 的迅猛发展与自己日常的工作相关性并不强,而 Python 究竟是哪些人在使用,亦或是其排名为何在短短时间内超过了老牌编程语言,或许很多存在种种的疑问。

不过据调查发现,摒除业界一些资本的炒作,Python 成为主流并非没有原因,一方面,Python 与我们所熟知的人工智能、机器学习、数据分析与处理等领域的需求紧密相关;另一方面, IEEE Spectrum 官方在对 Python 深入研究后表示,这或许也与 Python 被用作教育领域的教学编程语言有关。

时下,Python 成为许多学生学习的基本语言之一。这也与在 1980 年代 BASIC 成为主流的发展趋势颇为相似。彼时,BASIC 被纳入学生的教学语言中,市场上也存在许多针对该语言解析与实践的书籍、杂志乃至电视节目,学习 BASIC 也成为众多计算机与 IT 从业者的必过的一道门槛。但与现在 Python 的发展有所不同的是,在 BASIC 的年代中,很少有专业的程序员使用它,以至于随着时间的推移,BSAIC 的使用率更是一降再降,虽然后来衍生版本如 Microsoft Visual Basic,在相关的领域仍有一定的地位,但依旧未能让 BASIC 屹立不倒。

除此之外,Python 之所以不会走上 BASIC 的老路,还有一层比较重要的因素,就是与 BASIC 有所不同,Python 语言易于上手,也拥有丰富的库和工具,同时在机器学习等备受瞩目且较为专业的技术领域中也经常会被用到。

IEEE Spectrum 编程语言排行榜 TOP55

铁打的 Java、C,分别排名二、三位

根据 IEEE Spectrum 编程语言排行榜显示,除了 Python 之外,Java 和 C 语言分别位居第二、第三为。其次是 C++、JavaScript。

不过和去年榜单相比,在今年调整了指标后,Java 的占比有所降低。与此同时,JavaScript 超越了 R 语言,成功进入 TOP 5 之列。

此外,Arduino 有了很大位置地提升,从第 11 位上升到第 7 位。可能会有人说,Arduino 不是一种语言,而是使用 Wiring 派生的硬件平台进行编程的,而 Wiring 本身是从 C / C ++ 派生的。事实上,当用户希望使用兼容 Arduino 的微控制器时,他们通常会搜索“ Arduino代码”或购买有关“ Arduino 编程”的书籍,而不是搜索“ Wiring 代码”或“ C编程”。

上古语言 Cobol 再流行

今年,在这份榜单中,令人惊讶的是,面向过程的高级程序设计语言 Cobol 重回大众视野。甚至在不久之前,据 CNBC 报道,美国新泽西州正在对外招募一些会 COBOL 编码的程序员,以至于出现「80 岁大龄程序员出山」一说。

COBOL 作为一种专门为企业管理而设计的高级语言,多被用于一些比较重要且大型的商业数据处理领域,如在统计报表、作业调度、人事管理等系统中被广泛应用。虽然现在很多的应用开发被更为现代化的编程语言取代,但是在一些金融及大型企业或政府机构中,他们还在使用基于 COBOL 的应用。这不仅是因为传统的应用系统过于庞大,修改难度大,而且也由于 COBOL 的稳定性使得这些软件的生命周期更为长久。

不过,在如今全球 COVID-19 的爆发疫情之下,因为多个地方封锁,导致不少员工面临失业的窘境之下,美国各州的失业救济金系统在超重负荷下不堪一击,经常出现崩溃等现状。这也让在几十年前创建以来,许多系统未及时保持更新的问题逐一暴露出来,由此,出现上述所提及到的诸多 Cobol 程序员被召回的现状,在此趋势之下,Cobol 语言的热度也迅速上升。

就业需求编程语言排行榜

基于编程语言和工作的匹配度层面来看,在万亿级 AIOT 时代,C 语言的市场需求趋势超过了 Java。

Go 语言排在第四位,从其应用场景中,我们发现,Go 凭借丰富的标准库、性能、高效率等优势,在微服务、云平台、分布式系统开发中深受开发者欢迎。


开源编程语言排行榜

在开源领域,Python 依然是主流,其次分别为 Java、C、JavaScript、C++。

更多报告内容可参考:

https://spectrum.ieee.org/at-work/tech-careers/top-programming-language-2020

推荐阅读
  • 美国禁止与字节跳动及微信交易,腾讯股价暴跌,字节跳动回应了

  • 我还没考试,算法就说我的物理一定挂科

  • 关于Transformer,那些的你不知道的事

  • Python再夺冠,上古语言COBOL大流行,IEEE Spectrum 2020年度编程语言排行榜出炉!

  • 中台架构详解(上) | 大咖说中台

相关文章:

NSStream线程阻塞处理

http://www.10bay.com/?p149 [[session inputStream] scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode]; 因主线程有事务要处理,会阻塞主线程外设事件的触发; 解决: “将socket的runloopsource添加到新开的…

Python笔记

精简,快速,并持续完善。输入与输出 >>> print(Name: %s, score: %d % (Jack, 89)) Name: Jack, score: 89>>> print(Hello, world!) #逗号连接 Hello world!a raw_input("a:") #捕获原始输入,返回字符串 b …

资料验证的asp.net程序

<!-------资料验证&#xff1a;天乐comezxnsina.com------------> <!-------比较简单&#xff0c;以前写的&#xff0c;若有纰漏&#xff0c;请跟我联系----------> <Html> <Body bgcolor"White"> <H3>Validator(资料验证)控制元件<…

iphone UIView的一些基本方法理解

原文链接地址&#xff1a;http://www.cocoachina.com/bbs/read.php?tid38766UIView的一些基本方法理解UIView的一些基本方法理解&#xff1a;loadView、viewDidLoad、viewDidUnload、viewWillAppear、viewWillDisappear经常使用UIView以及它的子类&#xff0c;一般对于init:&a…

收藏!美国博士明确给出Python的高效学习技巧

我见过市面上很多的 Python 讲解教程和书籍&#xff0c;他们大都这样讲 Python 的&#xff1a;先从 Python 的发展历史开始&#xff0c;介绍 Python 的基本语法规则&#xff0c;Python 的 list, dict, tuple 等数据结构&#xff0c;然后再介绍字符串处理和正则表达式&#xff0…

pl/sql中三种游标循环效率对比

pl/sql中三种游标循环效率对比 - Oracle数据库栏目 - 红黑联盟 http://www.2cto.com/database/201307/224636.html转载于:https://blog.51cto.com/yweaner/1873294

UpdateData函数(转)

UpdateData&#xff0c;顾名思义&#xff0c;是用来刷新数据的。 UpdateData(TRUE) -- 刷新控件的值到对应的变量 UpdateData(FALSE) -- 拷贝变量值到控件显示例如&#xff0c;窗口中用 DDX_Text(pDX, IDC_EDIT1, m_usercode); 将IDC_EDIT1编辑框控件与m_usercode变量做了关联&…

PEAR, PECL和Perl的区别

PEAR是PHP扩展与应用库&#xff08;the PHP Extension and Application Repository&#xff09;的缩写。它是一个PHP扩展及应用的一个代码仓库&#xff0c;简单地说&#xff0c;PEAR就是PHP的CPAN。 PECL &#xff08;PHP Extension Community Library&#xff09;&#xff0c;…

永远不要对 AI 说:“我不行!”

最近这些年&#xff0c;如果我要问什么技术最值钱&#xff0c;我想超过90%的人都会说是&#xff1a;人工智能。确实&#xff0c;随着近些年人工智能发展与普及&#xff0c;AI研发岗早已成为编程领域薪水最高的岗位之一。但扎心的是&#xff0c;一提到 AI &#xff0c;相信绝大部…

ThoughtWorks雷达上的新奇变化

与往常一样&#xff0c;ThoughtWorks技术雷达涵盖了四方面内容&#xff1a;语言与框架、平台、技术和工具&#xff0c;而且其中每个领域都会有四方面内容&#xff1a;采用、试用、评估及保留。本文列举了相关领域中较新和值得注意的内容。\\语言与框架\\采用: Ember.js由于其生…

用于时序动作提名生成任务,爱奇艺提出BC-GNN图神经网络 | ECCV 2020

时序动作提名生成任务可以从未处理的长视频中定位出包含动作内容的片段&#xff0c;对视频理解以及时序行为检测任务等有着重要的作用。随着视频数量的激增以及视频内容的丰富&#xff0c;对时序动作提名算法的关注和需求也得到巨大提升。然而目前的方法多采用先生成起止边界&a…

剖析ASP.NET下部构造

crystal译yesky(前面我已说过ASP.NET拥有全新的下部构造)当我说到全新的下部构造……我得再次强调,是全新的下部构造! 它不只 是 ASP 的一个简单变化. 在此引入收管代码(managed code)这样一个全新概念,它横贯整个视窗开发平台. 受管代码在 NGWS Runtime下运行. NGWS Runtime是…

超大磁盘分区工具parted使用介绍(一)

使用parted GNU Parted有两种运行模式&#xff1a;命令行模式和交互模式。 1&#xff0e;命令行模式的选项 当你调用命令行模式时&#xff0c;parted的语法是这样的&#xff1a; 格式1# parted [option] device 格式2# parted [option] device [command [argument]] 格式1&am…

Sea.js学习4——Sea.js的配置

可以对 Sea.js 进行配置&#xff0c;让模块编写、开发调试更方便。 seajs.config seajs.config(options) 用来进行配置的方法。 seajs.config({// 别名配置alias: {es5-safe: gallery/es5-safe/0.9.3/es5-safe,json: gallery/json/1.0.2/json,jquery: jquery/jquery/1.10.1/jqu…

SQL Server 性能基线和监控

就讲讲监控那些值&#xff0c;基线抓的是那些值。如何做告警 环境&#xff1a;windows 2008r2,sql server 2008r2 sp1 性能基线&#xff1a; cpu&#xff1a; \Processor(_Total)\% Processor Time    \Processor(_Total)\% Privileged Time \SQLServer:SQL Statistics\Bat…

ASP.NET特写

作者&#xff1a; 仙人掌工作室 创建动态Web页面的新技术已经以CLR服务为基础全部重新改写。到目前为止&#xff0c;所有.NET提供的语言都可用于编写ASP.NET页面&#xff0c;但页面的扩展名和ASP 3.0的不同。具体地说&#xff0c;简单Web页面以“.aspx”为扩展名&#xff0c…

Google出品,EfficientNet在目标检测达到最新SOTA | CVPR 2020

作者 | tanmingxing&#xff0c;rpang&#xff0c;qvl 来源 | 晓飞的算法工程笔记&#xff08;&#xff09; 介绍 目前目标检测领域&#xff0c;高精度的模型通常需要很大的参数量和计算量&#xff0c;而轻量级的网络则一般都会牺牲精度。因此&#xff0c;论文希望建立一个可伸…

存储过程和存储函数初步

2019独角兽企业重金招聘Python工程师标准>>> 存储过程和函数初步 简单的来说&#xff0c;存储过程就是一条或者多条 SQL 语句的集合&#xff0c;可视为批处理文件&#xff0c;但是其作用不仅限于批处理。 ###存储程序可以分为存储过程和函数。 MySQL 中创建存储过程…

asp.net 入门的五个步骤

作者&#xff1a; rob howard 步骤 1&#xff1a;下载和安装 .net sdk asp.net 是作为 .net sdk 的一部分提供的&#xff0c;它是创建、生成和测试基于 .net framework 的应用程序所需要的所有技术的集合。要下载和安装 .net sdk&#xff0c;请前往 msdn online .net 开发人…

我帮公司财务写了个“群发工资条”的Python脚本

作者 | 黄伟呢来源 | 数据分析与统计学之美介绍这是一个很好的Python自动化的案例。对于小公司&#xff0c;采用手动方式一个个发送邮件还是可以的。如果一个上百号&#xff0c;上千号&#xff0c;或者更大规模的公司&#xff0c;我们再一个个发送工资条邮件&#xff0c;就太浪…

[转] vim的复制粘贴小结

转载自: http://blogread.cn/it/article.php?id304 用vim这么久了&#xff0c;始终也不知道怎么在vim中使用系统粘贴板&#xff0c;通常要在网上复制一段代码都是先gedit打开文件&#xff0c;中键粘贴后关闭&#xff0c;然后再用vim打开编辑&#xff0c;真的不爽&#xff1b;上…

CCNA基础 IP地址子网划分

例&#xff1a;1.2.3.4/28 解析0&#xff1a;https://ws2.sinaimg.cn/large/006aKfj6jw1fa09e02m53j30u01hc7av.jpg 解析1&#xff1a;子网数量&#xff1a;2^n-x ( N表示 "/" 后面的数字&#xff1b;X表示8或16或24 ) &#xff08;子网数量需要减去8或16视情况决…

一位IT從業人員的心路歷程

一位IT從業人員的心路歷程作者&#xff1a;章立民「Statgraphics統計繪圖入門詳論」是我的第一本著作&#xff0c;時值1990年9月&#xff0c;當時我還是一位大三升大四的學生。屈指算算&#xff0c;14年來&#xff0c;我已經撰寫了60本以上的書籍(簡體版未計算在內)&#xff0c…

面了大厂的 Python 岗后,炸了!

听说 Python 很难学&#xff1f;难在哪里&#xff1f;听说学完不知道做什么&#xff0c;为什么&#xff1f;结合我最近这些年的 Python 学习、开发经验&#xff0c;发现 90% 的人在初学 Python 时都会遇到下面这些问题——1. 没经验根本不知道从何学起&#xff0c;而且应用方向…

{} 与 function() { } , 选用空对象{}来存放keyValue

虽说js里面什么都能当对象&#xff0c;也能用填鸭式方法任意给对象添加属性&#xff0c;属性赋值.但是有些js内置的对象&#xff0c;类型属性也是没办法覆盖的。 贪多必失&#xff0c;写了一个用操作url 的js工具类&#xff0c;这个类上面有个属性叫queryString&#xff0c;我原…

java/android 设计模式学习笔记(1)--- 单例模式

前段时间公司一些同事在讨论单例模式&#xff08;我是最渣的一个&#xff0c;都插不上嘴 T__T &#xff09;&#xff0c;这个模式使用的频率很高&#xff0c;也可能是很多人最熟悉的设计模式&#xff0c;当然单例模式也算是最简单的设计模式之一吧&#xff0c;简单归简单&#…

实例解说.Net构架下的加密编程

yesky(张悦■yesky) http://www.yesky.com/SoftChannel/72342380484755456/20031225/1756613.shtml 很久以前就一直想写一个加密程序&#xff0c;但是一直感到太麻烦而没有动手&#xff0c;不过在前段时间学习.NET的过程中发现.NET的框架中封装了与加密有关的类。而且要在.NE…

人工智能新手入门学习路线!附学习资源合集

有段时间没跟大家分享编程资源福利了&#xff01;今天为大家整理了人工智能新手入门学习路线&#xff0c;同时附700分钟的学习资源合集&#xff0c;相信这套福利可以帮你顺利入行AI&#xff01;文末领取全部资料。一、AI基础好课学习资料整理&#xff08;约317分钟&#xff09;…

数据还原到指定时间点的处理示例

--创建测试数据库CREATE DATABASE DbGO--对数据库进行备份BACKUP DATABASE Db TO DISKc:\db.bak WITH FORMATGO--创建测试表CREATE TABLE Db.dbo.TB_test(ID int)--延时1秒钟,再进行后面的操作(这是由于SQL Server的时间精度最大为百分之三秒,不延时的话,可能会导致还原到时间点…

kvm cpu的亲和性绑定配置

1.CPU的绑定配置进程的处理器亲和性&#xff08;process affinity&#xff09;&#xff1a;指将进程绑定到特定的一个或多个cpu上去执行&#xff0c;而不允许将进程调度到其他cpu上。物理cpu&#xff1a;表示真实的cpu个数逻辑cpu&#xff1a;表示所有拥有一个完整真实cpu功能的…