导读:
2023 TIOBE 年度编程语言正式揭晓,C# 在发布23年后首次获得这一殊荣。TIOBE表示,C#在 Web 应用后端和游戏等领域变得持续流行,并开始吞食 Java 的市场份额。
2023 年 TIOBE 年度编程语言如今已经正式公布。C# 在这个榜单上前10名达20多年之久,在今天终于摘下年度编程语言之冠,属于历史首次。
TIOBE 的调查数据显示,C# 在2023年的涨幅达1.43%,远超过竞争对手 Scratch 的0.83%和 Fortran 的0.64%。
TIOBE 表示,C# 目前正在逐步蚕食 Java 的市场份额,并且在 Web 应用后端和游戏等领域变得越来越流行。
C# 作为一种新式、创新、开放源代码、跨平台,面向对象的编程语言,可以开发包括但不限于桌面、移动、IoT、游戏、Web、云原生、移动和 AI 全场景支持。
Java 的所属公司Oracle自 2019 年起就采用付费订阅模式,但 2023 年 1 月再次更改了定价模式,宣布基于公司内总员工数来收取对应的费用,而不是使用 Java SE 的员工数,这种定价模式的改变将对中小型企业产生重大影响,也引发了巨大的争议。
有开发者发贴说,“最近 Oracle “要求”公司每年付 72,000,000 英镑去使用 Java,所以公司关闭了所有的 Java 项目,从每台机器上卸载了 Java,并请来了几十个程序员,用 HTML 等重新创建他们的系统。”
缘由于此,根据 TIOBE 指数显示,从 2023 年 1 月到 2024 年 1 月,Java 失去了 4.34% 的市场份额。
从 Java 趋势榜单上也可以非常直观地看到,Java 已经降至自 2001 年 TIOBE 指数榜单推出以来的最低位。
相比较 Java 的收费与严苛的审查规则,C# 自 2014 年以来一直是开源和免费使用的,没有迹象表明要改为订阅模式。同时,由于是开放源码,与其他有贡献的开发人员合作非常容易。
此外,你也可以随时在 GitHub(https://github.com/dotnet/csharplang)上查看正在开发的新功能!
除此之外,C# 的流行还有几个原因:
面向对象的 C# 是微软的官方语言,与其开发工具和平台(如Visual Studio 和 .NET Framework)深度集成。这种集成性带来了高度的互操作性,使得 C# 成为 Windows 平台和其他微软技术的首选语言。
根据 JetBrains 发布的《2023 开发者生态系统现状》报告显示,79% 的 C# 开发人员使用 Windows。.NET 项目中使用 C# 的用户数高达 99%。
作为一种静态类型语言, C# 具有强大的类型检查系统,能够在编译时捕获许多错误。它还是一种面向对象的语言,支持封装、继承和多态等面向对象编程的核心概念。
C# 不断更新和演进,微软在两个月前也带来了最新的 C# 12 版本,引入了现代编程语言的特性,如主构造函数、集合表达式、内联数组等等,这使得 C# 在应对当今复杂的软件开发需求时更加灵活和强大。
Visual Studio 是一款功能强大的 IDE,为 C# 开发提供了丰富的工具、调试器和自动化功能,提高了开发效率。
随着 .NET Core 和最新的 .NET 8 版本的发布,C# 的跨平台能力得到了显著增强。现在它可以在 Windows、Linux 和 macOS 上使用 C# 进行开发,扩大了 C# 的应用范围。
从应用领域维度来看,得益于其简单易用的特性,C# 成为开发桌面应用程序(Windows、macOS 和 Linux)、移动应用程序(Android、iOS 和 Windows Phone)、Web 应用程序和使用 Unity 引擎的游戏时的首选语言。
“C# 将继续前行,甚至可能很快超过 Java”, TIOBE 社区这样预测。
Kotlin、Fortran 进入 前 20 名之列
除了 C# 之外,去年 TIOBE 指数还发生了许多有趣的变化,例如 Fortran 和 Kotlin 取代了 R 和 Perl,成为榜单 Top 20 名中的常驻语言。
其中,Fortran 在科学和工程领域中经常被用于执行大规模的数值计算任务,例如科学模拟、气象学、物理学等。其数学库的性能和功能使得它在这些领域中成为一个很好的选择。如今,科学研究和学术领域最常能见到 Fortran 的身影,而此门语言也排在榜单的第 12 位。
另一门编程语言 Kotlin,作为 Java 的竞争对手,更易学与易用。2017 年的 Google I/O 大会上,Google 宣布此后将优先采用 Kotlin 进行 Android 开发,如今近七年过去了,Kotlin 也如其期望的那样,使用率正在稳步上升。2023 年的 1 月 Kotlin 还排在第 25 位,当下排在了第 17 位。
令人惊讶的是,COBOL 语言也在本月进入了 Top 20 之列。这是因为在前几年受疫情影响,美国迎来了失业潮,导致许多人申请失业救济。当时美国至少有 12 个州都在用 COBOL 编写的失业系统,各个地区突如收到当地用户提交的几十万份的失业救济申请,导致这个 40 多岁的系统显然有些“压力山大”。
同时,根据 IJARSCT 数据统计,43% 的银行系统仍在使用 COBOL,每天处理的交易额高达 3 万亿美元,其中还包括美国 95% 的 ATM 交易和 80% 的信用卡交易。
这些系统急需 COBOL 程序员去维护。然而,很多精通 COBOL 的程序员年纪已经 60+ 岁,而新一代程序员中很少有人专研 COBOL。导致过去几年间,COBOL 在硬性需求下的使用量持续增长。基于此,IBM 还特别上线了一个由 AI 驱动的代码生成助手 watsonx,帮助企业用 AI 将 COBOL 代码转化为 Java 代码。
2024 年,哪些编程语言可能会跃进 Top 20 ?
不过,TIOBE 软件公司 CEO Paul Jansen 结合 2023 年的数据来看,其表示,「2023年,Julia 曾短暂进入 TIOBE 榜单的 Top 20,但未能保持这一位置。要想获得第二次机会,需要 Julia 语言自身和社区的成熟发展支持。」
Jansen 尝试回答了“2024 年哪些语言将进入 TIOBE 指数前 20 名?”这个问题。
“这很难预测,”他写道。“Julia 在 2023 年短暂触及 TIOBE 指数,但未能保持这一位置。Julia 语言和社区的成熟度需要获得第二次机会。我会把赌注押在 Dart(与 Flutter)和 TypeScript 上。后者是已经在工业中大量使用,但由于某种原因,它在 TIOBE 指数中尚未突破。让我们看看 2024 年会发生什么。”
Top 10 编程语言 TIOBE 指数走势(2002-2024)
其他编程语言
以下为 Top 21-50 的编程语言榜单:
第 51-100 名如下,由于它们之间的数值差异较小,仅以文本形式列出(按字母排序):
Algol、AutoLISP、Avenue、Bash、bc、Boo、CIL、CL (OS/400)、CLIPS、Clojure、CLU、Curl、DiBOL、Erlang、Forth、Hack、Icon、Io、J、J#、JScript、LabVIEW、Ladder Logic、Lingo、LiveCode、M4、Maple、MQL5、NATURAL、Nim、OpenEdge ABL、PL/I、PostScript、PowerShell、纯数据、Q、Racket、REXX、Ring、RPG、Scheme、Snap!、Solidity、SPARK、SPSS 、松鼠、Stata、Wolfram、Xojo、XQuery
注:以下排名位次取决于 12 个月的平均值。
TIOBE检索指数,可以帮助开发者们检查当前使用的编程语言在全球范围内是否最新或者最流行,它并没有对某一区域和国家和开发者做具体调查。
21CTO编辑的话:
回到现实,早期C# 因为被封印在Windows 平台,加上微软的闭源软件色彩,不易受学术界及开源社群青睐,错失发展黄金期(若C# 能早一点开源跨平台,局面应不可同日而语)。在既有系统应用比例及生态系统丰富度上远远不及Java,看来不是五年十年可以改变的现实。
许多人对C# 还停在Windows Only 的刻板印象,至今不知C# 早已能在Linux/macOS 上跑了。
不过,程序语言就像兵器,高矮胖瘦,力气大小,准确度敏捷性不同,适合的兵器也不同。说到底就求一个顺手好使方便上场杀敌,谋生自娱两相宜,就是适合的好兵器~
作者:万能的大雄
参考:https://www.tiobe.com/tiobe-index
本文为 @ 万能的大雄 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。