3

Java 危,C# 全力逼近,差距已历史最小

 11 months ago
source link: https://www.36kr.com/p/2467080390596744
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Java 危,C# 全力逼近,差距已历史最小

CSDN·2023-10-09 11:54
一起来看看本月有什么值得关注的新变化吧!

今天,10 月 TIOBE 编程语言榜单已最新出炉,一起来看看本月有什么值得关注的新变化吧!

interlace,1

01 被 C# 超越,Java 即将跌至第 5 名?

去年 12 月,Java 历史首次被 C++ 超越、跌出榜单前三的事实,令许多程序员深感意外,由此发出不少 “Java 英雄迟暮?”、“Java 真的已死?”的疑惑。自此以后,这 10 个月来 Java 在 TIOBE 编程语言榜单的排名再也没上过前三,与 C++ 之间的差距也日益扩大。

可能很难预料到,昔日常年霸榜的 Java 在被挤出 Top 3 之后,如今甚至还面临着被 C# 超越、即将跌至第 5 名的危险。

从市场份额来看,Java 在 Top 20 编程语言中的降幅最大,为 3.92%;反观 C# 的涨幅高达 3.29%,彼此仅相差 1.2% —— 按照 TIOBE 的官方说法:“C# 和 Java 之间的差距从未如此之小。如果这种趋势保持不变,预计 C# 将在两个月后超过 Java。”

interlace,1

回顾 C# 诞生的这 23 年来,它与 Java 之间因相似的特性与应用领域一直竞争不断。2000 年,微软发布由 C 和 C++ 衍生出来的面向对象的编程语言 C#,也是运行于 .NET Framework 和 .NET Core(完全开源,跨平台)之上的高级程序设计语言,由 Delphi 和 TypeScript 之父、.NET 创立者 Anders Hejlsberg 开发。

乍看之下,C# 与 Java 惊人地相似:面向对象编程的语言,有着几乎同样的语法,都需要编译成中间代码再运行,都支持跨平台,都支持单一继承和多接口实现,都提供自动垃圾回收功能,都支持强引用和弱引用,此外异常处理方式也几乎相同……不过,C# 与 Java 之间的区别也很明显:C# 借鉴了 Delphi 的一个特点,与 COM(组件对象模型)直接集成,还支持在创建数组时既定义数组大小又给数组赋值,同时支持使用预处理程序指令进行条件编译和 goto 语句等等。

然而,Java 受欢迎程度下降的原因不仅是因为后来者 C# 的各种优势,也因为甲骨文公司在 Java 8 之后决定引入付费许可模式。而微软在 C# 上则是采取了相反的策略:先是只能用作商业工具 Visual Studio 的一部分使用,如今 C# 已是免费开源的,因此受到了许多开发人员的欢迎。

interlace,1
interlace,1

除了付费许可模式,TIOBE 还推测了一些 Java 逐年衰落的其他原因,例如 Java 语言的定义在过去几年里没有太大变化,相比之下“其完全兼容的直接竞争对手 Kotlin 更容易使用,而且免费”——似乎是印证了这个说法,在本月的 Top 20 榜单中,Kotlin 继上个月强势“杀回” Top 20 后,本月再次上升两个名额,到了第 18 名。

02 其他编程语言

以下为 Top 21-50 的编程语言榜单:

interlace,1

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

4th Dimension/4D, ABC, ActionScript, Apex, APL, Ballerina, bc, CL (OS/400), Clean, Clipper, CLIPS, Clojure, Crystal, Curl, Eiffel, Elixir, Erlang, Forth, Groovy, Hack, Icon, IDL, Io, J, J#, LabVIEW, Ladder Logic, LiveCode, ML, Modula-2, MQL5, NATURAL, Nim, OCaml, OpenEdge ABL, PL/I, PostScript, Pure Data, Q, Racket, Raku, REXX, RPG, Smalltalk, SPARK, SQR, Tcl, TOM, VHDL, Wolfram

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

interlace,1

04 历史排名(1988-2023)

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

interlace,1

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

interlace,1

【说明】:

TIOBE 编程语言社区排行榜是编程语言流行趋势的一个指标,每月更新,这份排行榜排名基于全球技术工程师、课程和第三方供应商的数量,其中包括了流行的搜索引擎以及技术社区,如 Google、百度、维基百科、CSDN、必应、Hao 123 等等。

请注意这个排行榜只是反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语言所编写的代码数量多少。

这个排行榜可以用来考察你的编程技能是否与时俱进,也可以在开发新系统时作为一个语言选择依据。

本文来自微信公众号“CSDN”(ID:CSDNnews),36氪经授权发布。

该文观点仅代表作者本人,36氪平台仅提供信息存储空间服务。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK