开发18 分钟

编程语言榜单 2026:AI 这一年,五大榜单为什么开始互相矛盾

过去十几年,编程语言榜单之间的分歧一直在可解释的范围内:口径不同,名次差几位,方向大体一致。2026 年这个默契破了。同一个月,同一门语言,两个榜单给出了完全相反的方向。这不是某一家算错了,是它们赖以计数的那些人类行为,正在批量迁移到私有的 AI 会话里。这篇不谈哪门语言最好,只谈一件事:这些榜现在还能不能读,以及怎么读。

先看分歧有多大:五个榜单,五个答案

把 2026 年 8 月各家最新一期摆在一起,同一门语言的位置是这样的:

语言TIOBE 2026-08RedMonk 2026-01PYPL 2026-08GitHub Octoverse 2025
Python1212
JavaScript6153
TypeScript446111
Java4324
Rust10208未进前十
Go141220未进前十
Objective-C跌出前 20186未进前十

TypeScript 那一行是全文的起点。同一个时间点,GitHub 说它是全世界用得最多的语言,TIOBE 把它排在第 44 位、评分 0.37%。这不是「口径不同导致差几位」,这是两份互相否定的结论。

Objective-C 那一行同样离谱。PYPL 把它排在第 6,位置在 PHP、C#、TypeScript、Swift 之前。没有任何独立证据支持 2026 年的 Objective-C 比 TypeScript 更活跃。

再看变化方向。同样是 2026 年 8 月,同样是基于搜索行为的口径:

  • PYPL 给 Python 的份额是 50.44%,一年前是 31.02%,涨了 19.4 个百分点。
  • TIOBE 给 Python 的评分是 18.53%,一年前是 26.14%,跌了 7.61 个百分点。

两家在同一个月对同一门语言给出了方向相反、幅度都很大的判断。而 GitHub 的遥测说,同期 Python 的月度贡献者增长了 48.8%。

三个数字不可能同时是「Python 的使用情况」。它们测的本来就不是同一件事,只是过去这些差异被真实趋势的强度掩盖了。现在真实趋势没变得更弱,是测量本身出了问题。

底层数据先崩了:Stack Overflow 从 218 万到 1.2 万

所有解释的源头是同一件事。Stack Overflow 的新增提问量,按站方公开数据库的行计数:

时间新增提问
2014 年 3 月(单月峰值)207,204
2016 全年2,183,926
2023 全年788,512
2024 全年398,648
2025 全年108,981
2026 年 1 至 7 月合计12,322
2026 年 7 月单月1,442

2024 到 2025 是 -73%,2025 到 2026 按前七个月折年还要再 -80%。单月 1,442 条,相对 2014 年的峰值是 -99.3%。IEEE Spectrum 在 2025 年那一期里用的口径是每周提问量,结论一致:2025 年的周提问量只有 2024 年的 22%。

这件事本身不新鲜,业内讨论了两年。真正被低估的是它的连锁反应:Stack Overflow 不只是一个网站,它是多个榜单的原材料供应商

  • RedMonk 的排名有一半权重直接来自 Stack Overflow 的标签数据。
  • TIOBE 数的是搜索引擎里的网页结果数,而 Stack Overflow 长期是编程内容最大的单一来源之一。
  • PYPL 数的是 Google 上「某语言 tutorial」的搜索份额,而搜索这个动作本身正在被「直接问模型」替代。

一个数据源在两年内掉掉 99%,下游三个榜单不可能不出问题。分歧不是从榜单开始的,是从这里开始的。

TIOBE:它数的是网页,从来不是人

TIOBE 的口径需要先说清楚,因为它被误读得最厉害。它做的事是:在 25 个搜索引擎里检索 +"<语言> programming" 这个词组,取结果条数,按引擎归一化后加权平均,全体语言加总为 100%。

这里有三个后果,每一个都在 2026 年被放大了。

第一,它测的是网页存量,不是使用量。 TIOBE 自己也承认这是滞后指标。一门语言的网页数取决于历史上有多少人写过关于它的文章、教程、问答。当公开的技术问答在两年内蒸发 99%,新增网页的生产就停了,剩下的主要是历史归档。历史归档占比越高的语言,在归一化的份额里反而越占便宜。

第二,归一化让份额变成零和。 分母是所有被跟踪语言的网页数之和。主流语言的新增内容停滞,份额就会自动流向那些内容以历史存量为主的语言。这正是 2026 年 TIOBE 榜上最反常的部分:

语言2025-08 位次2026-08 位次变化
Rust1810+8
Ruby2616+10
Swift2517+8
R149+5
SQL128+4
COBOL2219+3
Go814-6
Fortran1115-4
Perl918-9

Perl 的轨迹尤其值得看:2025 年 2 月在第 30 位,2025 年 8 月冲到第 9,2026 年 2 月第 11,2026 年 8 月回到第 18。18 个月内在第 9 和第 30 之间来回摆动。没有任何一种关于开发者行为的解释能说明 Perl 的使用量在一年半里翻了几倍又跌回去。这是仪器抖动,不是现象。

TIOBE 官方对 Python 下滑给出的解释是「R、Perl 这类专用语言在蚕食 Python 的份额」。这个解释站不住。同期没有任何独立数据源显示 Perl 使用量的暴涨,而 GitHub 的遥测显示 Python 贡献者增长了近五成。更合理的读法是:Python 的信息需求正在最快地迁进 AI 对话框,所以它在「公开网页存量」这个口径上流失得最快。从这个角度看,TIOBE 在 2026 年已经有一半变成了一个反向指标:跌得越狠的语言,往往是它的使用者最先不再上网搜索的语言。

第三,检索词工程的老问题现在变致命了。 TIOBE 检索的是 +"TypeScript programming" 这个固定搭配,而现实里几乎没人这么说话。结果就是 TypeScript 在 TIOBE 排第 44 位、0.37%,Kotlin 第 28、Dart 第 32、Zig 第 41。这个偏差一直存在,过去它只是让榜单看起来保守;现在当另一个榜单把 TypeScript 排到第 1,这个偏差就从「保守」变成了「错误」。

TIOBE 仍然有它的用处:看十年以上的长周期趋势,看一门语言有多少历史资产。Python 从 2011 年的第 6 到今天的第 1,这条线是可信的。但用它回答「过去 12 个月发生了什么」,现在已经不可靠。

PYPL:Python 一年从 31% 涨到 50%,这不是增长

PYPL 的口径是 Google Trends 上「某语言 tutorial」的搜索份额,归一到 100%。它自我定位是先行指标:搜教程的人是准备学的人,比网页存量更早反映趋势。

这个逻辑在教程搜索还是主流学习入口时成立。现在的实测数据是这样的:

时间PythonJavaScriptTypeScriptGo
2022-0828.14%9.11%2.74%2.00%
2024-0829.38%8.30%2.95%2.08%
2025-0831.02%7.38%2.54%1.79%
2026-0850.44%3.52%1.52%0.49%

Python 在四年里从 28.14% 走到 31.02%,动了不到 3 个点。然后在最近 12 个月里,一口气加了 19.4 个点。同期榜上几乎所有其他语言都在跌:JavaScript 腰斩,Go 从第 13 掉到第 20,TypeScript 从第 9 掉到第 11。

一门语言的实际使用量不会在一年内翻倍,何况是已经排第一的语言。发生的是分母塌了。 PYPL 只报份额,不报绝对量,所以总盘子的萎缩在图上完全看不见。

搜索「X tutorial」这个行为整体在消失,但消失的速度不均匀。还在 Google 上搜教程的人,越来越集中在两类:一是完全的编程新手,二是被 AI 带进来的非科班使用者。这两类人搜的绝大多数是 Python。而在职的 Go 工程师、TypeScript 工程师早就不搜教程了,他们直接问模型。

于是剩下的样本严重偏斜,Python 的份额被机械地推高。Objective-C 排到第 6、Ada 排到第 12,是同一个机制的产物:这些语言的搜索者基数小、结构稳定,别人跌得比它们快,它们的份额就相对上升。

所以 PYPL 今天测的不是「编程语言的流行度」,更接近「还在用搜索引擎学编程的那部分新手的语言分布」。这个信息不是没有价值,它甚至能解释为什么 AI 时代的入门人口高度集中在 Python。但它不能回答榜单标题声称要回答的那个问题。

RedMonk:他们自己承认一半数据废了

RedMonk 的做法是 GitHub 代码活跃度和 Stack Overflow 讨论量各占一半,一年发两次。2026 年 1 月这期在 4 月发布,前 20 是:

  1. JavaScript 2. Python 3. Java 4. PHP / C#(并列) 6. TypeScript 7. CSS / C++(并列) 9. Ruby 10. C 11. Swift 12. Go 13. R 14. Shell / Kotlin / Scala(并列) 17. PowerShell 18. Dart / Objective-C(并列) 20. Rust

这份榜单本身的信息量不大,位次几年没怎么动。真正值得读的是他们写在正文里的三段自述。

第一段,承认 Stack Overflow 那一半失效了。 他们写道,Stack Overflow 对新一代开发者的相关性一直在下降,标签增长变慢,因此「越来越不具代表性」。RedMonk 的分析师 Rachel Stephens 说得更直白:喂给编程语言排名的数据里,有一半正在变得陈旧,从长期看价值存疑。

第二段,GitHub 那一半也出了问题。 他们发现下半年的 PR 数据异常偏低,给了两个可能:一是 GitHub Archive 的数据缺失或有误;二是代码产出在加速的同时,提交到公开仓库的比例在下降。第二种可能性更值得注意,它意味着连遥测口径也开始漏掉真实活动。

第三段,是最诚实也最容易被误读的一句。 他们本来预期 AI 编程工具会明显改变语言选择,理由是这些工具让「开发者对某门语言的熟悉程度变得不那么重要」。然后他们写:迄今为止,这些变化并没有在我们能看到的数据里显现出来。

这句话通常被引用成「AI 还没改变语言格局」。更准确的读法是后半句:**在他们能看到的数据里没显现。**同一份报告里,他们已经说了自己一半的数据源失效、另一半出现异常。仪器坏了的时候读不出信号,不等于没有信号。

同一期里还有一个能直接验证这一点的细节:Zig 在总榜第 82 位,但拆开看,它在 GitHub 侧是第 58,在 Stack Overflow 侧是第 83。RedMonk 自己的评论是,Stack Overflow 的整体萎靡很可能不成比例地伤害了这些本该成长的语言。一门新语言的使用者今天遇到问题会去问模型,不会去发帖,于是它在榜单上永远显得比实际更冷清。这是 AI 时代新语言面临的第一层不利:不是没人用,是没人替它留下公开痕迹。

IEEE Spectrum:唯一把测量危机写进正文的那一家

IEEE Spectrum 的年度榜按惯例在 8 月底发布,本文写作时 2026 年这一期还没出,最新一期是 2025 年版。

2025 年版的排名结论本身不复杂:主榜 Python 第一,JavaScript 从第 3 掉到第 6;Jobs 榜(按招聘需求加权)Python 从第 2 升到第 1。

值得记下来的是他们把整篇文章的重心从「谁赢了」挪到了「我们还测不测得准」。文中提出了三个判断:

一,测量对象正在消失。 2025 年 Stack Exchange 上每周新增的提问量,只有 2024 年的 22%。开发者把问题拿去私下问 AI 了,不再留下公开记录。

二,语言之间的差异在变小。 原话的意思是,当 AI 辅助意味着程序员可以越来越少地关心某门语言的具体细节,那么用今天最流行的通用语言里的任何一门,都足够了。语言选择的权重在下降,这本身就削弱了榜单的意义。

三,小众语言被 AI 系统性压制。 AI 在使用较少的语言上给出的结果明显更差。这直接抬高了新语言获得临界规模的门槛。

第三条有独立的学术支持。已有多项研究量化了 LLM 在低资源编程语言上的性能落差,成因是训练数据稀缺和跨语言迁移有限,受影响的典型语言包括 R、Julia、Lua、OCaml、Racket 乃至 Rust。这个落差不会自己消失:训练数据来自公开代码和公开讨论,而公开讨论正在枯竭,新语言想靠社区内容把模型喂熟,路径比五年前窄得多。

GitHub Octoverse:目前最可信的口径,以及它的三重偏置

五个榜单里只有 Octoverse 不依赖搜索、不依赖问答。它用的是平台自有遥测,统计口径是月度贡献者数。2025 年这期在 11 月发布,数据截至 2025 年 8 月。

核心结论和数字:

  • TypeScript 首次同时超过 Python 和 JavaScript,成为 GitHub 上使用最多的语言,月度贡献者 263.6 万,同比 +66.6%。
  • Python +48.8%,JavaScript +24.8%,Java +20.7%,C# +22.2%。
  • 平台开发者总数超过 1.8 亿,一年新增 3,600 万,同比 +23%,平均每秒一个新开发者。
  • 超过 110 万个公开仓库引入了 LLM SDK,同比 +178%。过去 12 个月新建 AI 相关仓库 693,867 个。
  • 近 80% 的新开发者在注册第一周内用上了 Copilot。
  • AI 生成的项目里,Shell 脚本用量 +206%。

GitHub 自己给 TypeScript 登顶的解释是类型系统:强类型给模型提供了更明确的约束,生成的代码更可能是对的。他们援引的一项研究称,LLM 生成代码的编译错误里有 94% 是类型检查失败。这个方向有独立佐证:ETH Zurich 的类型约束解码工作证明,把类型系统作为解码约束能把编译错误减少一半以上。

但 Octoverse 不是没有偏置,它有三重,而且都在 AI 时代被放大:

一,只覆盖 GitHub 上的公开活动。 闭源、企业内网、GitLab 全部不在内。RedMonk 已经观察到公开仓库提交占比可能在下降这个迹象。

二,新增人口不是均质的。 一年 3,600 万新账号,其中印度一家贡献了全球新注册的 14%,新增 520 万。新手账号的语言分布天然偏向入门语言,而 AI 让「开一个仓库、提一个 PR」的成本趋近于零,一次性项目的比重必然上升。

三,「月度贡献者」这个单位在贬值。 一年提交一次的人和全职维护者,在这个口径下是同一个计数单位。当创建仓库的边际成本被 AI 压到接近零,同样的数字背后的实际工作量在稀释。

还有一个不算偏置但影响使用的问题:它一年只发一次,数据截至 8 月、11 月才公布,读到时已经三个月旧。而这一年里,变化最快的信号(Stack Overflow 提问量)在 12 个月内掉了 73%。榜单的更新节奏,已经跟不上它要描述的那个世界的变化速度。

剔掉噪声之后,真正站得住的两条趋势

把五个榜单里互相矛盾的部分全部划掉,只保留至少两个独立口径同向支持、且跨越三年仍成立的结论,剩下两条。

趋势一:候选集在收敛,而不是某一门语言在赢。

支持它的证据来自不同口径:Octoverse 的遥测显示前三名的绝对增速远高于历史常态(TypeScript +66.6%、Python +48.8%);IEEE Spectrum 指出 AI 在小众语言上明显更差;多项学术研究量化了低资源语言的性能落差;RedMonk 观察到 Zig 这类新语言在公开讨论侧被系统性低估。

机制是一个正反馈:训练语料集中在少数几门语言,模型在这几门上写得最准,人于是更愿意用它们,产出的代码又变成新的语料。这个循环每转一圈,长尾就更难爬出来。

要注意收敛的具体形状。它不是「Python 吃掉一切」或者「TypeScript 吃掉一切」,是两个位置被锁死:AI 与数据方向的默认语言是 Python,应用与产品层的默认语言是 TypeScript。这两个位置在过去一年变得更难挑战,而不是有人换了座位。

趋势二:静态类型的价值被 AI 抬高了。

这条有四个独立来源同向:Octoverse 的遥测(TypeScript 登顶,且是十几年来最大的一次语言位次变动);JetBrains 生态调查(TypeScript 是五年里增长最显著的语言);TIOBE(Rust 一年从第 18 升到第 10,是它这一年最实的一个变动);学术侧(类型约束能把 LLM 的编译错误减半)。

机制不复杂:生成速度已经远超人工 review 的速度,而在人看不过来的地方,编译器、类型检查和测试是唯一能规模化的验证者。类型系统从「写代码时的约束」变成了「审代码时的替身」。

但这条趋势要给一个诚实的边界。RedMonk 的榜上 Rust 仍在第 20,甚至被 Dart 反超;他们特意指出,理论上 AI 应该降低 Rust 的入门门槛,但目前观察不到。类型化的红利,到目前为止主要被 TypeScript 拿走了,而不是被所有强类型语言均分。 原因大概率是迁移成本:从 JavaScript 到 TypeScript 是渐进的,从任何语言到 Rust 都不是。

还有一条只能算半真的趋势值得提一句:工具链的 Rust 化。uv 的 PyPI 月下载量已达 1.26 亿,超过 Poetry 的约 7,500 万;ruff 约 1.8 亿。Python 生态最常用的基础工具正在被 Rust 重写。但这件事在任何一个语言榜上都看不见,因为所有榜都按人头计,而写工具的人少、用工具的人多。这也提示了榜单的一个结构性盲区:基础设施语言天然被低估。

榜单照不到的部分

除了口径失真,还有三类东西是所有榜单在结构上就测不到的。

第一类,新的「源代码」没有进任何榜。 提示词、AGENTS.md、skills 与规则文件、agent 的配置与编排,现在会进版本库、进 code review、有可复现性要求,占用真实的开发时间。它们在语言榜上的位置是零。这一年 agent 工具层的变化速度远高于语言层,这一点在AI 技术栈演进里有更完整的梳理;具体到 agent 框架内部长什么样,DeepSeek Harness 那篇拆得更细。

第二类,生成量与提交量的脱钩。 榜单统计的是留下痕迹的代码。AI 写完被丢弃、被改写、留在本地或私有仓库的那部分,没有任何一个口径能覆盖。RedMonk 已经把「公开仓库占比下降」列为一种可能,但没人能量化它。

第三类,态度。 Stack Overflow 2025 年的开发者调查里有一组反差极大的数字:84% 的人在用或计划用 AI 编程工具,比一年前的 76% 还在涨;但信任 AI 输出准确性的只有 29%,比此前的 40% 明显下滑;46% 明确表示不信任,只有 3% 表示高度信任。同一份调查里,uv 以 74% 的推崇度成为最受推崇的技术。

「用得越来越多,信任越来越低」这个组合,任何一个语言排行榜都表达不出来。但它恰恰是 2026 年语言选择的真实驱动力之一:正因为不信任生成结果,能自动验证的语言才变得更有吸引力。这一层因果,从名次表上一个字都看不出来。

2026 下半年怎么读这些榜

把上面的分析压成一张可以直接用的表:

榜单实际口径现在还能回答什么别拿它回答什么
GitHub Octoverse平台遥测,月度贡献者数公开协作里的语言分布与增速闭源与企业内部;单人投入强度
RedMonkGitHub 与 Stack Overflow 各半长期位次的稳定性一年内的变化;新语言的真实热度
IEEE Spectrum多源加权,含招聘数据招聘端的需求结构实际代码产出量
TIOBE25 个搜索引擎的网页结果数十年尺度的长期趋势、历史资产厚度任何一年内的涨跌;TypeScript 这类检索词不匹配的语言
PYPLGoogle「X tutorial」搜索份额仍在用搜索引擎入门的新手结构在职开发者的使用分布
Stack Overflow 调查自填问卷态度、信任度、工具偏好语言份额(样本自选择,且用户群在萎缩)
JetBrains 调查自填问卷学习意愿与工具链偏好语言份额(IDE 用户结构偏置)

配三条读法:

  1. 先问口径,再看名次。 遇到任何一条「X 语言涨了 Y%」,先确认它在数网页、数搜索、数人头还是数问卷。这一步能过滤掉今年绝大多数的语言类结论。
  2. 一年内的变动一律先当噪声。 Perl 在 18 个月里从第 30 到第 9 再回到第 18,是最好的反例教材。跨三年仍然成立的方向才值得当趋势。
  3. 要求交叉验证。 至少两个不同口径同向,才当作事实。TypeScript 的上升过了这一关:平台遥测、RedMonk 位次、JetBrains 五年增速三个来源一致。Perl 和 Objective-C 的「上升」一个都没过。

至于选型,本文的分析只支撑一句话:在 AI 是主要产出方式的前提下,语言选择里多了一个过去不存在的变量,就是模型在这门语言上写得有多准,以及写错了能不能被机器自动发现。 这个变量目前把答案压向了 Python 加 TypeScript 这个组合,理由不是它们更优雅,而是它们同时满足语料充足和验证廉价。真要偏离这个组合,得有具体理由,而且要预先算清楚模型帮不上忙时的那部分成本。

常见问题

TypeScript 到底是第 1 还是第 44?

两个都对,但问的不是同一件事。GitHub Octoverse 用平台遥测统计月度贡献者,2025 年 8 月 TypeScript 以 263.6 万贡献者、同比 +66.6% 首次登顶。TIOBE 统计的是 25 个搜索引擎里 +"TypeScript programming" 这个固定词组的网页结果数,而现实中几乎没人用这个搭配说话,所以它只拿到 0.37%、排第 44。如果你想知道有多少人在写 TypeScript,看 Octoverse;TIOBE 的这个数字在方法上就不适合回答这个问题。

PYPL 说 Python 一年涨了 19 个百分点,可信吗?

份额是真的,但不能读成使用量增长。PYPL 报的是 Google 上「某语言 tutorial」搜索的份额,只报份额不报绝对量。Python 在 2022 到 2025 三年里只从 28.14% 走到 31.02%,然后一年跳到 50.44%,同期榜上几乎所有其他语言都在跌。合理的解释是分母塌了:搜教程这个行为整体在萎缩,还在搜的人越来越集中于新手和被 AI 带进来的非科班使用者,这批人绝大多数搜 Python。同期 Objective-C 升到第 6、Ada 排到第 12,是同一个机制的副产品。

Stack Overflow 的衰落为什么会影响编程语言排行榜?

因为它是多个榜单的原材料。RedMonk 的排名有一半权重直接来自 Stack Overflow 标签数据;TIOBE 数网页结果,而 Stack Overflow 长期是编程内容最大的单一来源之一。按站方公开数据库的行计数,新增提问从 2016 年的 218 万条掉到 2025 年的 10.9 万条,2026 年前七个月合计只有 12,322 条,7 月单月 1,442 条,相对 2014 年峰值下降 99.3%。RedMonk 自己已经承认这一半数据正在变得陈旧、价值存疑。

AI 真的改变语言格局了吗?RedMonk 说数据里看不出来。

RedMonk 的原话是「迄今为止这些变化并没有在我们能看到的数据里显现出来」,重点在后半句。同一份报告里他们承认一半数据源失效、另一半的 GitHub PR 数据出现异常。仪器读不出信号不等于没有信号。用不依赖搜索和问答的口径去看,变化非常明显:Octoverse 的遥测显示 TypeScript 一年涨 66.6% 并首次登顶,这是十几年来最大的一次语言位次变动。

为什么说 AI 让新语言更难起来了?

有两层。第一层是模型能力:多项研究量化了 LLM 在低资源编程语言上的性能落差,成因是训练数据稀缺,IEEE Spectrum 的表述是 AI 在使用较少的语言上给出的结果明显更差。第二层是痕迹:新语言的使用者遇到问题会去问模型而不是发帖,于是它在依赖公开讨论的榜单上永远显得比实际冷清。RedMonk 那期里 Zig 总榜第 82,但 GitHub 侧第 58、Stack Overflow 侧第 83,这个分裂就是证据。两层叠加,新语言既更难被模型写好,也更难被榜单看见。

TypeScript 登顶和类型系统有多大关系?

GitHub 自己的解释是强类型给模型提供了更明确的约束,并援引研究称 LLM 生成代码的编译错误里 94% 是类型检查失败。ETH Zurich 的类型约束解码工作提供了独立佐证:把类型系统作为解码约束能把编译错误减少一半以上。机制上说得通:生成速度远超人工 review 速度,编译器成了唯一能规模化的验证者。但要注意红利分配不均,RedMonk 榜上 Rust 仍在第 20 甚至被 Dart 反超,他们特意指出 AI 理论上应该降低 Rust 门槛但观察不到。差别大概率在迁移成本,JavaScript 到 TypeScript 是渐进的,到 Rust 不是。

那 2026 年还有哪个榜单值得看?

GitHub Octoverse 目前最可信,因为它用平台自有遥测,不依赖搜索和问答,但要记住它的三重偏置:只覆盖 GitHub 公开活动、新增人口高度集中(一年 3,600 万新账号,印度占 14%)、「月度贡献者」这个单位随着开仓库成本趋零而贬值。此外它一年只发一次且滞后三个月。实用做法是把各榜按能回答的问题分工:Octoverse 看公开协作分布,IEEE Spectrum 看招聘需求,TIOBE 只看十年尺度,PYPL 只看新手入口结构,问卷类只看态度和工具偏好。任何结论都要求至少两个不同口径同向。