当前位置: 首页 > 科技观察

排行榜出来了!Java首次落后于C++!_0

时间:2023-03-19 20:41:34 科技观察

作者丨千山日前,荷兰软件质量评估公司TIOBE发布了2022年12月编程语言排行榜。在最新的榜单中,Python依然占据榜首,而C++则在TIOBE排行榜历史上首次超越Java,以0.12%的微弱优势排名第三。前三名是Python、C和C++,而Java跌至第四位。据TIOBECEOPaulJansen介绍,这是自2001年TIOBE指数公开以来,Java首次没有进入前三名。这也是二十多年来,C++首次超越Java的排名。图源:网络需要指出的是,编程语言排行榜有各种评级,TIOBE指数是衡量编程语言流行程度/受欢??迎程度的指标。它的百分比计算不是基于市场份额,而是基于全球熟练技术工程师、课程和第三方供应商的数量,并使用流行的搜索引擎,如谷歌、必应、雅虎、维基百科、亚马逊、YouTube等。排名数据。因此,就TIOBE的榜单而言,一定程度上反映了某种编程语言的流行度和当前流行度,但不能作为判断该语言好坏的证据。作为开发人员,了解编程语言的流行程度是很有必要的。一方面可以用来检验编程技能是否与时俱进。另一方面也可以作为开发新系统时语言选择的参考。1、C++摆脱压制,升至前三。今年以来,C++和Java的排名比较焦灼。在上一篇《C++与Java“相爱相杀”:一个步步紧逼,一个节节败退》中,我们提到在6月份的TIOBE榜单中,“C++的份额明显增加,而Java的热度和热度似乎在逐渐减弱。从目前的趋势来看,C++的可能性很大超越Java正在增加”。现在,这种可能性已经成为现实。有业内人士推测,C++的激增部分原因可能是2020年12月C++20的稳定发布。C++之父BjarneStroustrup曾表示:“C++20是自C++11以来最大的一次发布,这将是C++发展史上的一个里程碑。”它的表现确实不负众望。Bjarne认为,C++最强大的部分不是它的某个独特特性特别出色,而是它在广泛的事物变化中表现出色。更笼统地说,“C++的优势更多在于它是许多问题的良好解决方案,而不是任何特定问题的最佳解决方案。”当然,也有人对C++表示不满。微软AzureCTOMarkRussinovich今年曾公开表示,“是时候停止使用C/C++开始任何新项目了,所有需要非垃圾收集语言的场景都应该使用Rust。”出于对内存安全的考虑,Russinovich表示应该放弃C++,选择Rust。然而,事实证明,这个结论为时过早。正如Bjarne回应的那样:“一门新语言通常需要花费数年时间并付出巨大努力才能在其广泛的应用领域与一门成熟的语言匹敌。爱好者们很少看到这一点,他们的评论往往是片面的。”今天C++在TIOBE榜单上的强势表现,也说明开发者对于C++这门与时俱进的老牌语言依然保持着高度的青睐。2、Java还能玩,多方共同努力,坚如磐石。如上所述,TIOBE指数只是一种衡量标准。在这一类别之外,Java有时做得更好,是所有编程语言中名副其实的领导者。在社区规模方面,Java以1650万排名第三,远超C/C++(1230万),仅次于Python(1690万)和JavaScript(1960万)。研究公司Slashdata在其2022年第三季度的开发者国家状况报告中发现,“Java的社区规模在过去两年中几乎翻了一番,从830万增加到1650万。”Slashdata报告还指出,Kotlin是发展最快的语言社区之一,而Kotlin代码运行在Java虚拟机上,因此它的兴起也提升了Java。以GitHub上的项目数量来衡量,Java在咨询公司Redmonk2022年10月的编程语言排行榜中也排名第三,仅次于Python和JavaScript。Redmonk联合创始人JamesGovernor在今年4月的一篇文章中指出:“全球公有云的三巨头——亚马逊、谷歌云、微软Azure和甲骨文都在大力投资Java语言、运行时支持、以及托管和托管服务,寻求赢得企业工作负载以实现现代化。”此次投资无疑是对Java本身价值的高度认可。早在2017年,时任甲骨文软件开发副总裁的MarkCavage就曾表示,“我们希望在下一个十年实现Java至上,Java将永垂不朽。”现在看来,这个期待不假,Java在编程语言界的地位确实难以撼动。但需要注意的是,Java在某些地方也会呈现出“老手暮光之城”的色彩。根据StackOverflow的年度开发人员调查,在最受欢迎的技术列表中,Java在2018年得到了45.3%的受访者的支持。到2020年,这个数字下降到40.2%。2022年,Java的好评率仅为33.27%。今年9月,甲骨文正式发布了最新版本的编程语言Java19,正如甲骨文承诺每年3月和9月更新Java版本一样,这次依然没有延迟。不过,相比甲骨文不断刷新版本号的努力,开发者对此的反应却显得有些乏善可陈。年初的统计显示,37%的开发者还停留在2014年发布的Java8版本,29%使用Java11进行开发,只有37%表示会考虑切换到Java17LTS。Java不会很快消失,但有时它也不是人们的首选。3.Kotlin、Julia等的崛起,后续值得关注。在最新的TIOBE排行榜中,除了老牌“常青树”之间的博弈,一些小众语言的突破也值得关注。其中,Kotlin和Julia距离前20越来越近。Kotlin从上个月的28位跃升至23位,Julia从32位跃升至24位。来源:互联网在公众印象中,Python、C和Java的知名度可能更高和存在。事实上,Kotlin和Julia也各有优势。作为一种通用语言,Kotlin可以在Java工作的地方工作:服务器端应用程序、移动应用程序(Android)、桌面应用程序。它适用于所有主要工具和服务。当然,最终的应用还是因人而异。Julia发展迅速,但其生态系统仍有改进的空间。多重分派值得了解,因为它是感兴趣的开发人员的杀手级功能(有关详细信息,请参阅《是什么让Julia变得独一无二?》)。虽然关注度没有Python等流行语言高。但谁也不能否认Julia在科学计算领域的巨大优势。据了解,TIOBE将于下月公布2022年度编程语言,Python、C、C++将角逐年度语言大奖。在过去的一年里,Python的王者地位是有目共睹的。现在它的市场份额为16.66%,增长率为3.76%,是年度编程语言的最佳候选者之一。C++在2003年获得了这一殊荣,今年的评选结果是王者归来还是黑马,我们拭目以待。参考链接:https://www.theregister.com/2022/12/10/java_slips_behind_c_in/