社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

TIOBE 3 月编程语言排行榜:主流 Java、C++ 惨遭嫌弃,Python 势头迅猛

CSDN • 5 年前 • 407 次点击  

取代不了的 Java、挡不住势头的 Python、吐槽不尽的 C++......数百种编程语言中也仅有那么几种当属主流语言,而如今这些主流的编程语言局势如何?身处其中的开发者又需要了解哪些内容?

本文无意挑起编程语言争端,而是希望以最新的趋势一窥当前各大主流语言的发展现状。

作者 | 屠敏

出品 | CSDN(ID:CSDNNews)

日前,一月一更的 TIOBE 编程语言社区最新发布了 2019 年 3 月排行榜。


Python 从小众语言到主流的逆袭


从榜单来看,曾经铁打的 Java、C、C++ 局势,早已在数月前被 Python 的闯入而打破。而究其根由,并非是 C++ 的应用领域正在逐渐缩减,而是随着人工智能、机器学习的崛起,适用于该领域的 Python 才会水涨船高,带起了市场份额。这也是为什么在 Java、C、C++、Visual Basic .NET 等一众编程语言使用率增幅放缓的情况下,Python 仍能以 2.39% 的增率保持强劲的增长势头。

TIOBE 编程语言排行榜 Top 20 

而对于 Python 的未来,根据央广网报道,2018 年中国人工智能核心产业规模已达到 686 亿元,在2019 年中,科技部副部长李萌表示将着重加快项目部署实施,强化基础研究,加大芯片、工具和平台等研发力度。因此在人工智能项目将实现规模化落地的前景之下,作为基础研发支持的 Python 语言,至少在国内的大环境中,应用需求也将进一步扩大。


“众口难调”的编程语言


此外,通过 3 月的编程语言排行榜,我们虽然看到了 Java、C、C++ 等语言位于 Top 5 的位置,但事实上,在日常应用中,开发者对其的吐槽也越来越盛。

排名第一的 Java,依然有人嫌弃

在过往的这些年中,无论是 Google 扶持的 Kotlin、还是其亲儿子 Go 语言、亦或是高可靠性的 Erlang,均对语言界的龙头老大 Java 发起过挑战,但最终都不一而终。对此,在 CSDN 最新发布的 2018 中国软件开发者报告中,前豌豆荚技术负责人、现轻芒联合创始人范怀宇评价道:

多年以来,Java 一直都是最常用的语言 ,一方面是因为 Java 可以用在前后端开发,具有很好的普适性;另一方面,因为 JVM 虚拟机和 Java 生态的完善。在前端开发上,Kotlin 等 JVM 上的其他语言表现非常优异,和现有的 Java 类库也可以无缝兼容,会逐步在很多场景下取代 Java。

不过,在服务端开发上,Java 依然是最平衡的选择。Java 的 Web 框架经过千锤百炼已经可以支撑足够大的并发,JVM 经过长年优化性能表现也而非常出众,而 Java 的各种类库、统一的编程模型、丰富的人才储备,也可以满足各种场景的诉求。

不过自从 Oracle 宣布 Java 版本以六个月为周期更新后,Java 的更新速度一度成为诸多开发者所诟病的点。当前,Java 12 预计将于本月内发布,而Java 13 也已处于 Early-Access(EA,早期访问)阶段,对此,不过不少开发者大呼:

  • Java 更新太快不一定是好事;

  • 当前 Java 8 仍是主流;

  • 被调到某银行,项目开始前告诉我尽情发挥。部署时各种问题,Spring Boot 换成普通 Maven 再换成 J2EE 项目,Spring 从 5.7 换成 4.3 再到 3.1,JDK 从 8 降到 7,愣是没部署成功。不说了我接着看 1.6 特性去了;

  • Java 9 及以上都不支持 32 位系统。让我这位拿着仅支持 32 位 Win10 系统的 ATOM 上网本给别人演示项目的情何以堪。

  • Oracle 应该把 Java 语言维护交还社区,专心做好 JVM 就行了,希望以后 Java 和 JVM 可以成功拆分,独立发展。

C++ 的模块化问题

广泛应用于游戏、科学计算、分布式应用、操作系统、嵌入式等领域的 C++,似乎在最新版本的 C++ 20 中遭遇了难题,即 C++ 标准委员会欲将 Modules(模块化)加入 C++ 20 中。对此,有网友认为,这无用的模块设计最终会害死自己。

同时,也有不少技术人表示,C++ 正变得越来越易用,不过这门语言该瘦身了,哪本 C++ 教程不是一千页以上的?!


其他编程语言排名


除此之外,在 TIOBE 榜单的 Top 10 中,C# 自从去年 7 月被 Visual Basic .NET 反超后,市场份额持续下滑,如今 Visual Basic .NET( 6.429%)的使用率几乎是 C#(3.267%)的一倍。同时 JavaScript、Visual Basic 的名次均有所下降,不过稍许的浮动也属正常范畴。

在本月编程语言排行榜中,还值得注意的是,PowerShell 进入了 TIOBE 排行榜的前 50 名,位于第 45 名。PowerShell 是面向 Windows 和 Windows Server 的自动化平台和脚本语言,从诞生至今已经超过 12 年。事实上,去年微软旗下的 PowerShell 团队才推出 PowerShell Core 的第一个版本,并以 6.0 后缀来命名。想来 Powershell 之所以会再次受欢迎,可能与之相关,因为 PowerShell Core 基于 .NET Core 上可以构建开源项目,也能在 Windows、MacOS、Linux、Ubuntu、Debian、OpenSUSE 等多个平台上运行。

TIOBE 编程语言排行榜第 21-50 名

第 51-100 名如下,由于它们之间的数值差异较小,仅以文本形式列出(按字母排序):

  • 4th Dimension/4D, ABC, ActionScript, Alice, Apex, APL, Avenue, bc, Bourne shell, C shell, CL (OS/400), Clojure, Common Lisp, Crystal, cT, Elixir, Elm, Emacs Lisp, F#, Forth, Icon, IDL, Inform, Io, Korn shell, LiveCode, Maple, Mercury, Modula-2, Monkey, MQL4, MS-DOS batch, NATURAL, OpenCL, Oz, PostScript, Pure Data, Q, Ring, S, SPARK, SPSS, Standard ML, Stata, Tcl, Tex, TypeScript, Vala/Genie, VBScript, VHDL

Top 10 编程语言 TIOBE 指数走势(2002-2019)



历史排名(1998-2019)


注:以下排名位次取决于 12 个月的平均值。


编程语言“名人榜”(2003-2018)


【说明】

TIOBE 编程社区指数(The TIOBE Programming Community index)是编程语言流行度的指标,该榜单每月更新一次,指数基于全球技术工程师、课程和第三方供应商的数量。包括流行的搜索引擎,如谷歌、必应、雅虎、维基百科、亚马逊、YouTube 和百度都用于指数计算。具体的计算方式见这里:https://www.tiobe.com/tiobe-index/programming-languages-definition/。

值得注意的是,TIOBE 指数并不代表语言的好坏,开发者可以使用该榜单检查自身的编程技能是否需要更新,或者在开始构建新软件时对某一语言做出选择。

详细榜单信息可参考 TIOBE 官网:https://www.tiobe.com/tiobe-index

【END】

 热 文 推 荐 

☞ 中国开发者真实现状:40 岁不做开发,算法工程师最稀缺!

☞ 微信翻译出 Bug 上热搜,程序员又背锅?!

☞ “杀死” App 的留白设计!

☞ 北京程序媛图鉴 | 程序员有话说

☞ 一部刷爆朋友圈的5G短片,看完才知道5G多暖多重要!

☞ 20万赚200万,48岁创业者是这样吊打小鲜肉的!

☞  曝贾扬清第二跳,加入阿里!达摩院或将承载中国下一个AI愿景?

☞ BAT 鼎立格局被打破,2019 年这些公司是程序员跳槽首选!

print_r('点个好看吧!');
var_dump('点个好看吧!');
NSLog(@"点个好看吧!");
System.out.println("点个好看吧!");
console.log("点个好看吧!");
print("点个好看吧!");
printf("点个好看吧!\n");
cout "点个好看吧!");
fmt.Println("点个好看吧!");
Response.Write("点个好看吧!");
alert("点个好看吧!")
echo "点个好看吧!"

点击阅读原文,输入关键词,即可搜索您想要的 CSDN 文章!

喜欢就点击“好看”吧!
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/29472
 
407 次点击