编程语言风起,3 月 TIOBE 编程语言榜单已发布
一、2025年3月计算机编程语言排行榜同期对比
每年的变化
从排名趋势来看,Python 依然是最火的语言,稳坐 TIOBE 指数第一,本月市场份额达到 23.85%,和 2 月相比差不多。 Python 能一直保持热度和很高的排名,主要是它在多个领域的强势渗透
AI 和机器学习:TensorFlow、PyTorch 等框架的普及,加上 ChatGPT 这样的生成式 AI 爆发式增长,让 Python 成为 AI 领域的首选语言。
数据科学:Pandas、NumPy、Matplotlib 等库已经非常成熟,数据分析、可视化几乎离不开 Python。
教育:Python 语法简单易懂,几乎成了全球高校的标配编程入门语言,培养了大批新手开发者。
跨平台和快速开发:Python 的脚本特性让它在原型开发、DevOps、自动化测试等领域特别吃香。
排在 Python 后面的,依然是 C++(11.08%)和 Java(10.36%)。而C 语言,它的市场份额从去年的第二名跌到了第四,现在是 9.53%,有了比较明显的下滑。分析其背后原因,这可能和不少项目逐渐转向更现代的语言有关,比如:Rust 的崛起
截至2025年3月,计算机语言的排行情况大致如下:
排名前列的语言
1)Python:
特点:语法简洁明了,易于上手,适合初学者。拥有丰富的标准库和第三方库,简化开发过程。
应用领域:Web开发、数据分析、人工智能、自动化测试、网络编程、游戏开发、科学计算、自动化运维、云计算等。
流行度:连续多年稳居排行榜首位,是大家公认的比较好入门的编程语言。
2)C++:
特点:高性能,支持面向对象编程,提供了丰富的库和操作符,允许进行底层编程。
应用领域:系统编程、游戏开发、高性能计算、嵌入式系统、桌面客户端开发等。
流行度:近年来排名逐渐上升,在某些排行中已经超越了C语言。
3)Java:
特点:跨平台性、面向对象编程特性和丰富的API库。
应用领域:企业级应用、Android开发、大数据技术、云计算、Web开发等。
流行度:在企业级应用和Android开发中占据重要地位,排名始终稳居前列。
4)C:
作为编程语言的鼻祖,具有高效、灵活和底层访问能力强的特点。在操作系统、嵌入式系统、底层驱动开发等领域仍然有着广泛的应用。但C++11 之后,智能指针、并发库等特性的引入降低了开发难度,让一部分 C 语言的使用场景被 C++ 吸收。当然,C 语言在操作系统、嵌入式设备等领域依然不可替代,但从趋势来看,越来越多的新项目会更倾向于现代化的替代方案,C 语言的市场份额可能会继续缩水。
其他排名靠前的语言
C#:微软开发的一种面向对象的编程语言,主要用于Windows平台的应用程序开发。随着.NET框架的推广和Unity游戏引擎的普及,C#的应用范围也在不断扩大。
JavaScript:前端开发语言,几乎成为了Web开发的标配。随着Node.js等后端框架的兴起,也逐渐在服务器端开发中崭露头角。
Go(又称Golang):语法简洁,高效的编译速度和强大的并发处理能力,在云计算、分布式系统等领域得到了广泛应用。
Rust:内存安全、高性能,加上 Mozilla、微软、亚马逊、Google 等大厂的支持,Rust 越来越受系统级开发者的青睐,很多原本用 C 语言写底层的团队开始转向 Rust。
三、TypeScript 编译器语言选择的争论最近几天,微软重写 TypeScript 编译器的消息在各大媒体上掀起了一场风暴:
微软为什么既没用自家的 C#,也没选近年大热的 Rust?而是选择了竞争对手 Google 开发的 Go 语言。
微软选择使用Go语言重写TypeScript编译器的核心原因可归纳为以下几点,主要围绕性能、代码兼容性、开发效率及语言特性展开:
原生Go实现显著提升了编译速度,例如Visual Studio Code的150万行代码编译时间从77.8秒缩短至7.5秒(提升10.4倍),其他项目的编译速度也普遍提升约10倍。此外,内存占用减少约50%,编辑器加载时间从9.6秒降至1.2秒。
Go的垃圾回收(GC)机制在处理批量编译时影响极小,因为进程结束后GC的开销几乎可忽略,而长期运行的语言服务也能通过稳定的内存分配模式优化GC触发时机。
微软选择“移植”而非“重写”,要求新语言尽可能保留原有代码结构和逻辑。Go的语法与TypeScript的JavaScript代码库高度相似,例如对多态树遍历、循环数据结构的处理更直观,这简化了代码迁移的复杂度。
Rust因严格的内存安全规则(如禁止循环引用需使用unsafe代码)和缺乏自动GC,导致移植复杂度和开发成本陡增。相比之下,Go的自动内存管理更贴合TypeScript原有设计。
循环数据结构支持:TypeScript编译器依赖抽象语法树(AST)中的父子引用、符号相互引用等循环结构,而Rust对此类结构的处理需要额外复杂设计,Go则天然支持。
并发与性能平衡:Go的并发原语(如Goroutines)和高效代码生成能力,既满足高性能需求,又无需像Rust那样手动管理内存生命周期,适合编译器的并行任务处理。
微软需同时维护JavaScript和Go两个代码库,Go的简洁性和代码可移植性降低了同步变更的难度。而Rust或C#需要更彻底的重写,可能耗费数年时间且破坏兼容性。
尽管C#是微软自家语言,但其在内存布局控制、与JavaScript代码结构相似性方面不如Go适配。此外,Go的社区生态和工具链在系统级项目中已成熟,更适合长期发展。
原生Go实现为AI驱动的开发工具(如GitHub Copilot)提供了更快的代码分析能力,支持实时错误检查和高级重构 (出自人工智能头条),这对未来智能化开发至关重要。
Rust的局限性:尽管Rust在性能和安全性上占优 (出自人工智能头条),但其严格的内存管理和代码结构差异导致移植成本过高,且难以直接复用TypeScript原有逻辑。
C#的落选:虽然C#与微软生态紧密相关,但其语法和内存模型与TypeScript差异较大,且团队认为Go更适合当前项目的迁移目标。
综上,Go语言在性能、开发效率、代码兼容性及维护成本上的综合优势,使其成为TypeScript编译器迁移的最优选择
四、编程语言界的“古董回归”这次比较奇怪的是:一些历史悠久的古董编程语言正在悄悄重返舞台,并且跻身 TIOBE 指数前 20。
Fortran 和 Delphi 正在冲击前 10
COBOL 和本月新上榜的 Ada 也在稳步上升。
TIOBE CEO Paul Jansen 认为,这与全球大量关键遗留系统息息相关。这些系统大多由“恐龙级”语言开发,而如今,最后一批熟悉它们的核心开发者即将退休。出于稳定性和风险控制的考虑,许多公司宁愿维护甚至扩展现有系统,而不是大规模迁移到现代语言。不过,虽然被称作“恐龙”,这些老牌语言并没有停滞不前,而是在不断进化。Fortran 2023、Delphi 12(2024 年发布)、Ada 2023、COBOL 2023……它们都有新的标准版本,持续优化,适应当下需求。
Paul Jansen 表示,“看到它们重回 TIOBE 指数前 20 可能会让人意外,但它们仍然在支撑世界运转,确实值得被重新认识和认可。”
Delphi的“回归”本质上是技术迭代与市场策略调整的结果,尤其在跨平台开发需求增长的背景下,其重新定位为开发者提供了更多可能性
五、Rust语言越来越受欢迎Rust:以其内存安全性和高性能著称,正在系统编程领域逐渐瓜分C/C++的市场份额。尽管学习难度较高,但其安全性和性能优势使得它越来越受欢迎。
美国政府也将其列为推荐开发语言
编程语言的排行榜并非一成不变,它会随着技术的发展和用户需求而变化而发生变化。 每种编程语言都有自己的优势和缺点,大家要根据自己的兴趣和职场的需求而谨慎选择。
核心竞争力
python那语法看着就难受
小辣椒高效Office 回复 03-16 16:20
习惯了也还好
三少爷的剑
我不太相信现在还有人在使用Foxpro
小辣椒高效Office 回复 03-16 16:21
比较少了,之前很有企业管理系统用Foxpro和delphi
迷迷糊糊就走到了这个岁数
别吹了,没意义。写系统除了C还能用什么?反过来Java要是做桌面,巨婴早就搞死它了吧。不做桌面还有这市场,上面还有个python,C++多废就知道了。干什么都不行,吹牛第一名。C是基础,python和Java路线是对的,C++该淘汰了。
迷迷糊糊就走到了这个岁数 回复 小辣椒高效Office 03-16 17:30
本质上,C++就是C加了面向对象,C++面向对象厉害吗?多继承?垃圾回收?friendly?还有微软现在的VS都成了什么样子了,100多G,这是你我能用的起的?想当年WIN32API,后来的com,再后来的命名空间,最擅长的是简单事情复杂化。它里面编译器现在是也gcc了。我真的没觉得C++有什么存在的必要性。
小辣椒高效Office 回复 03-16 16:22
但C++人家还是排在前几名啊
正义联盟-超级男孩
Fortan 竟然因为我们有个项目正在从 fortan 代码转c++ 而上升了[笑着哭]
小辣椒高效Office 回复 03-16 16:22
这个使用的人的确比较少一些
薛定谔的人
VB[哭哭]
小辣椒高效Office 回复 03-17 23:02
VBA还有市场的