Workflow
C#
icon
搜索文档
50 万行代码不敢交给 AI?TypeScript 之父直言:它就像是个“高级复读机”
程序员的那些事· 2026-02-02 10:26
文章核心观点 - 编程语言更适合AI编程的关键在于其拥有最大的训练数据集,而非语言本身的先进性 [1] - 当前大语言模型本质上是基于已有内容进行复述和简单推演的高级复读机 [2] - TypeScript 7.0将引入原生编译器,预计性能提升10倍 [5] - TypeScript团队选择Go语言而非Rust或C来重写原生编译器,并解释了选型理由 [7] - 在编译器代码迁移中,直接使用AI翻译代码效果不理想,但AI在生成辅助迁移工具和后续PR同步方面表现良好 [9][10] - TypeScript的未来发展将遵循现有路线,语言本身不会激进更新,但AI将彻底改变开发工具链的形态 [11][12] - TypeScript的诞生初衷是修复JavaScript的问题而非创造新语言,其编译器迁移至Go也引发了关于语言性能上限的讨论 [13] TypeScript 7.0 核心升级 - 即将发布的TypeScript 7.0将引入原生编译器,目前版本已进入预览阶段 [5] - 现有编译器由TypeScript编写并运行在V8引擎上,性能已无法满足项目规模扩大的需求 [5] - 原生编译器预计带来10倍的性能提升,其中一半收益来自原生代码,另一半来自对共享内存并发特性的利用 [6] - 新编译器的设计目标是输出必须与旧编译器完全一致,包括所有历史遗留的“怪癖”,以确保用户迁移的平滑性 [6] 编译器重写的语言选型 - 团队排除了Rust,因其不支持移植所需的循环数据结构且缺乏自动垃圾回收(GC) [7] - 团队最初试验了C,但最终选择了Go语言,原因是Go与JavaScript的语法和设计思路高度相似 [7] - 这一选择在C社区引发了不解和质疑,但团队坚信选对了工具,过去一年的实践已证明其正确性 [8] AI在代码迁移中的应用与局限 - 团队曾尝试用AI完成从TypeScript到Go的50万行代码迁移,但效果很不理想 [9] - 直接使用AI翻译代码容易产生“幻觉”,输出不确定,导致需要逐行人工检查,得不偿失 [9] - AI在代码迁移中的正确应用方式是生成能输出确定结果的辅助迁移工具程序 [10] - AI在将旧代码库新增的PR迁移至Go代码库的工作中,使用效果相当不错 [10] - TypeScript的语言服务正在大幅适配AI技术,在此场景下AI能发挥远超人工的效果 [10] TypeScript的未来发展方向 - TypeScript将继续遵循先跟随JavaScript标准化进程,再补充类型系统特性的路线 [11] - 不要期待TypeScript语言本身出现激进变化,未来最大的变革将发生在工具链层面 [11] - AI的出现彻底改变了开发工具形态,AI不再只是IDE中的插件,而变成了需要开发者监督的核心工具,甚至可能不再需要传统IDE作为载体 [11] - AI工具需要语言服务的底层支持,因此MCP等机制愈发重要,旨在让AI能直接提出语义级、结构级的问题和建议 [11] - AI需要具备等同于IDE的能力,但要以LLM或Agent的方式完成,这将彻底改变开发工具的形态 [12] TypeScript的起源与现状 - TypeScript的最初构想来自微软Outlook Web团队使用Script工具的经验 [13] - 其核心初衷是通过扩展JavaScript的能力来修复它本身存在的问题,而非创造一门全新的语言 [13] - TypeScript已跻身主流编程语言之列,但其编译器从自身语言迁移至Go的举动,无形中承认了它在性能层面的物理上限 [13]
50万行代码不敢交给AI?TypeScript之父直言:它就像是个“高级复读机”
36氪· 2026-01-30 21:08
公司技术战略与产品演进 - TypeScript 7.0将引入原生编译器,性能预计提升10倍,其中一半收益来自原生代码,另一半来自对共享内存并发特性的利用[3] - 新编译器的设计目标是输出必须与旧编译器完全一致,包括历史遗留的“怪癖”,以确保用户迁移的稳定性[4] - 为开发原生编译器,团队选择了Go语言而非Rust或C,主要原因是Go与JavaScript的语法和设计思路高度相似,且过去一年的实践证明了选择的正确性[5] - TypeScript的未来发展将遵循一贯路线:先跟随JavaScript的标准化进程,再补充必要的类型系统特性,语言本身不会出现激进变化[7] - TypeScript未来的最大变革将发生在工具链层面,AI将彻底改变开发工具的形态,甚至可能不再需要传统意义上的IDE作为载体[8] AI技术的应用与评价 - 当前大模型本质上更像是一个“把别人做过的事情重新吐出来,在此基础上做一些简单推演”的高级复读机[1] - 现有编程语言之所以更适合AI编程,并非因为它们更“先进”,而是因为它们拥有最大的训练数据集[1] - 团队曾尝试用AI完成从TypeScript到Go的50万行代码迁移,但效果很不理想,因为AI输出容易出现“幻觉”,导致需要逐行人工检查,得不偿失[5][6] - AI在代码迁移中的正确应用方式是生成辅助迁移的工具程序,以输出确定的结果,真正为开发提效[6] - 在完成原生编译器的初始迁移后,将旧代码库中新增的PR迁移至Go代码库的工作中,AI的使用效果相当不错[6] - TypeScript的语言服务正在大幅适配AI技术,在这个场景下,AI能发挥出远超人工的效果[6] - AI工具需要语言服务的底层支持,通过将语言服务与MCP等机制打通,让AI能够直接提出语义级、结构级的问题和修改建议[8] 技术选型与开发实践 - 未选择Rust实现原生编译器,是因为Rust不支持团队移植所需的循环数据结构,且没有自动垃圾回收(GC)[5] - 未选择C实现原生编译器,尽管进行了相关试验,但最终因Go与JavaScript的高度相似性而选择了Go[5] - TypeScript拥有一个体量庞大、逻辑复杂的类型检查器,其诸多行为逻辑仅体现在现有代码的精准语义中,并无完整文档,这使得“从头重写”编译器几乎不可行[3] - TypeScript的诞生初衷并非创造一门新语言,而是通过扩展JavaScript的能力来修复其本身存在的问题[9]
Python 大哥,C 老二,Java 小三……Go 彻底跌出前十
程序员的那些事· 2026-01-08 07:34
2025年TIOBE编程语言年度榜单核心观点 - C凭借年度最大排名涨幅,时隔3年再度斩获“年度编程语言”称号,完成了从Windows专属到跨平台、从微软闭源到开源的两大范式转变,与Java在商业软件市场的竞争仍在继续 [1] 2026年1月榜单排名与份额变化 - **Python** 以22.61%的评级份额保持榜首,但份额较上年同期下降0.68% [2] - **C语言** 排名从第4位升至第2位,份额为10.99%,较上年同期增长2.13% [2] - **Java** 排名保持第3位,份额为8.71%,较上年同期下降1.44% [2] - **C++** 排名从第2位降至第4位,份额为8.67%,较上年同期下降1.62% [2] - **C** 排名保持第5位,份额为7.39%,较上年同期增长2.94% [2] - **JavaScript** 排名从第6位降至第6位(表格符号显示异常,但排名未变),份额为3.03%,较上年同期下降1.17% [2] - **R语言** 排名从第18位大幅跃升至第10位,份额为1.82%,较上年同期增长0.81% [1][2] - **Perl** 排名从第32位飙升至第11位,份额为1.63%,较上年同期增长1.14% [1][2] - **Go语言** 排名从第7位大幅下滑至第16位,份额为1.24%,较上年同期下降1.37% [1][2] - **Rust** 排名从第14位升至第13位,份额为1.51%,较上年同期增长0.34%,排名创新高 [1][2] 编程语言市场格局与竞争态势 - C语言凭借简洁高效的特性,在嵌入式系统市场依旧占据优势,其排名与C++互换,升至第2位 [1] - R语言依托数据科学领域的增长重返榜单前十 [1] - Go语言彻底跌出前十名 [1] - Ruby掉出前20名且短期回归无望 [1]
2026 年 01 月编程语言排行榜|C# 拿下年度编程语言~
菜鸟教程· 2026-01-07 11:30
2025年度编程语言评选结果 - C被评为2025年度编程语言,这是其在三年内第二次获得该称号,评选依据是过去一年中排名提升幅度最大[1][2] - C在2025年1月至2026年1月期间,评级(Ratings)从7.39%增长至未明确百分比,但增幅为+2.94%,是榜单中增幅最高的语言之一[9][23] C的竞争地位与增长驱动 - C已从仅限于Windows的企业语言,进化为跨平台、开源、现代化的代表,其成功源于长期持续演进,包括率先引入新特性、完成向跨平台和开源的范式转移[4][6][7] - 在游戏开发、Web服务、云原生等领域,C已与Java平分天下,两者差距不大,C评级为7.39%,Java为8.71%[8][9] - 微软正在多个关键领域押注C,包括OpenAI、Copilot、Azure、Unity等,为其增长提供了强大生态支持[10] - TIOBE官方提出,Java因语法冗长、归Oracle所有,未来能否长期压制日益现代化和灵活的C仍是未知数[10] 主要编程语言市场格局 - **Python**保持绝对领先地位,评级为22.61%,尽管较前一年下降了0.68%,但在通用领域已全面胜出[9][19] - **C语言**评级为10.99%,增长+2.13%,因其简单、直接、高效,在持续扩张的小型嵌入式系统市场中无可替代[9][16] - **Java**评级为8.71%,下降-1.44%,与C++(评级8.67%,下降-1.62%)位置接近,两者在榜单中互换位置[9][12][23] - **JavaScript**评级为3.03%,下降-1.17%[9] - **Visual Basic**评级为2.41%,微增+0.04%[9] - **SQL**评级为2.27%,微降-0.14%[9] - **Delphi/Object Pascal**评级为1.98%,增长+0.19%,排名升至第9位[9][23] - **R语言**评级为1.82%,增长+0.81%,排名从第18位大幅跃升至第10位,重返前十,反映出数据统计、分析和可视化需求的持续增长[9][13][14][23] 其他显著变化与趋势 - **Perl**语言意外复苏,排名从第32位飙升至第11位,直接重返前20[12][26] - **Go语言**在2025年彻底跌出前十,排名从第7位大幅下滑至第16位,官方认为其短期内难以反弹[21][26] - **Ruby**跌出前20名,排名第27位,同样被认为失去增长点后排名下滑几乎不可逆[21][27] - **TypeScript**排名第32位,官方判断其有望在2026年首次进入前20[21][27] - **Zig**语言排名从第61位升至第42位,被认为具备冲击前30的潜力[21][27] - **C++**虽然演进速度前所未有,但其部分激进特性(如Modules)工业界接受度并不高[16] 历史排名与长期趋势 - 观察长期历史排名(1988-2025),Python从2001年的第26位稳步上升至2026年的第1位,而Java则从2016年的第1位滑落至2026年的第4位[29] - C语言长期保持顶尖地位,在1991年、1996年、2001年、2006年均排名第1,2026年排名第2[29] - C自2006年排名第7位后,地位持续巩固,2026年排名第5位[29] - “年度编程语言”历史榜单显示,Python在过往多次获奖(如2024、2021、2020、2018、2010、2007年),C则在2023年和2025年获奖[30]
2025 年 12 月编程语言排行榜|R 语言杀回前十,C# 或能拿下年度编程语言~
菜鸟教程· 2025-12-11 11:30
TIOBE 2025年12月编程语言排行榜核心观点 - R语言在2025年12月重新进入TIOBE指数前十,反映企业对数据统计深度分析和可视化呈现的需求持续增强 [1][3] - Python在通用编程领域已全面胜出,而R语言与Python的竞争关系已结束,两者定位不同,分别在细分领域和通用领域发展 [6][8][10] - C是当前增长最快的编程语言,并有望成为2025年年度编程语言,其从Windows企业语言进化为跨平台、开源、现代化的代表,在游戏开发、Web服务和云原生等领域与Java平分秋色 [14][15][17] 2025年12月编程语言排名概况 - 2025年12月排名前十的编程语言依次为:Python、C、C++、Java、C、JavaScript、Visual Basic、SQL、Perl、R [19] - 与2024年12月相比,排名变化显著的有:C语言从第4位升至第2位,C++从第2位降至第3位,Java从第3位降至第4位,Perl从第26位大幅跃升至第9位,R语言从第16位升至第10位 [20] - 排名11至20的语言中,Go语言从第7位大幅下滑至第15位,Rust从第14位升至第17位,Kotlin从第23位升至第20位 [22] 主要编程语言市场占有率与历史趋势 - 根据榜单数据,当前主要语言的市场占有率(部分)为:C语言占10.11%,C++占8.95%,Java占8.70%,C占7.26%,JavaScript占2.96%,Visual Basic占2.81% [18] - 从长期历史排名(1988-2025)看,Python的上升轨迹显著,从1995年的第23位跃升至2025年的第1位;C从2005年的第9位上升至2025年的第5位;JavaScript从2005年的第10位上升至2025年的第6位 [25] - 在2003年至2024年的“年度编程语言”获奖记录中,Python共获奖6次(2024、2021、2020、2018、2010、2007),C在2023年获奖,C++在2022年和2003年获奖 [26] 编程语言生态与定位分析 - R语言是专为统计分析和数据可视化设计的专业工具,在学术界、科研机构以及医药、金融等研究密集型行业地位稳固,其优势在于统计建模精确、可视化能力强,但工程化薄弱 [1][4][5][11] - Python定位为通用底盘,覆盖接口、自动化、服务端、机器学习等领域,团队协作与部署链路更顺畅,已成为通用领域的绝对主导者 [8][11] - C的崛起得益于微软的全面押注,其在OpenAI、Copilot、Azure、Unity等关键生态中均有深度集成,推动了其在游戏开发、Web服务、云原生等领域的广泛应用 [15][18]
2025 年 11 月编程语言排行榜|C# 要翻身超Java?Java:我不要面子的啊!
菜鸟教程· 2025-11-13 11:30
TIOBE编程语言排行榜总体格局 - Python以23.37%的评级保持第一,但增长势头趋于平稳,增长率为+0.52% [1] - C、C++和Java在第二名的位置上激烈竞争,C语言评级为9.68%(+0.67%),C++为8.95%(-1.69%),Java为8.54%(-1.06%)[2][10] - C以7.65%的评级位列第五,但增长迅猛,月度增长率为+2.67%,与Java的差距已缩小至不足1% [3][10][12] C的崛起势头 - C是目前TIOBE指数中增长最快的编程语言,如果保持当前势头,有望成为2025年年度编程语言 [4] - 微软通过.NET Core等技术补足了C的跨平台短板,使其在开源、异步编程、模式匹配等现代化特性方面具备全面竞争力 [6][10] - C在游戏开发(尤其是Unity引擎)、Web服务、云原生领域已与Java形成平分天下的格局 [9] 各语言市场份额变化 - 2025年11月前十名语言分别为:Python(23.37%)、C(9.68%)、C++(8.95%)、Java(8.54%)、C(7.65%)、JavaScript(3.42%)、Visual Basic、Delphi/Object Pascal、Perl、SQL [21][23] - 显著上升语言包括:C(从2024年11月第4位升至第2位)、Perl(从第27位跃升至第9位)[23] - 显著下降语言包括:C++(从第2位降至第3位)、Java(从第3位降至第4位)、Go(从第7位降至第11位)[23][25] 行业应用格局演变 - Java在金融行业仍保持绝对主导地位,传统银行系统的核心代码高度依赖Java生态 [7][8] - C语言和C++在操作系统、驱动程序和游戏引擎等底层开发领域保持不可替代的地位 [19] - Python已成为新时代通用语言,覆盖人工智能、数据分析、科学计算等创新领域的核心环节 [20] 历史趋势与生态特征 - 近20年编程语言格局发生显著变化:Python从2000年的排名外上升至2025年第1,C从2000年第10位升至第5位,Java从2000年第3位降至第4位 [28] - 语言生态呈现分化特征:部分语言依靠底层技术优势维持长期稳定地位,部分语言通过开发生态快速崛起 [22] - TIOBE指数主要反映全球工程师社区、课程资源和搜索引擎关注度的变化趋势,而非语言技术能力的绝对评价 [18][29]
2025 年 10 月编程语言排行榜|C、C++、Java 第二名之争愈演愈烈,Python 继续称王
菜鸟教程· 2025-10-09 08:37
TIOBE 2025年10月编程语言排行榜总体格局 - Python以24.45%的评级份额稳居榜首,自2023年末登顶后持续保持第一[1][12] - C、C++和Java为第二名位置展开激烈竞争,三者市场份额差距始终不足1%[2][4] - C语言本月以9.29%份额重回第二,C++和Java分别以8.84%和8.35%紧随其后[5][13] 头部语言竞争态势分析 - C语言排名回升主要得益于C23标准发布和应用带来的推动力[5] - Java刚推出Java 25版本,C++正在准备C++26标准,预计第二名之争将持续激烈[5] - C呈现快速追赶态势,与第二梯队差距从年初4%缩小至1.4%,目前份额6.94%[14][15] - C上升得益于微软生态持续发力和.NET平台成熟[15] 编程语言市场份额分布 - 前十名语言及份额:Python(24.45%)、C(9.29%)、C++(8.84%)、Java(8.35%)、C(6.94%)、JavaScript(3.41%)[13] - 第7-10名分别为:Visual Basic、Go、Delphi/Object Pascal、SQL[23] - 11-20名包括Fortran、Perl、R、PHP、Assembly language等语言[27] 编程语言历史趋势与生态定位 - Python近20年呈现强势崛起趋势,成为AI、数据分析、自动化脚本和教学入门首选语言[11][12] - C、C++、Java走势稳中有降,流失的关注度主要被Python吸收[9] - C/C++在操作系统、驱动、游戏引擎领域保持不可替代地位[7][21] - Java在金融、企业级开发和后台系统应用保持稳定优势[7][21] - Python成为新时代通用语言,出现在所有创新领域核心环节[22] 编程语言长期发展轨迹 - 历史排名显示Python从2000年第25位持续上升至2025年第1位[30] - C语言在1985-2005年间多次位居榜首,2025年排名第4位[30] - Java在2010-2020年间长期保持前2名,2025年排名第3位[30] - C从2005年第9位稳步上升至2025年第5位[30]
2025 年 07 月编程语言排行榜|主流编程语言内卷升级,安全系“黑马” Ada 正在逆袭?
菜鸟教程· 2025-07-11 10:31
编程语言市场格局分析 - Python以26.98%的市场占有率稳居榜首,与第二名C++(9.80%)拉开17%以上的差距,呈现断崖式领先 [7][10] - C++、C、Java、C、JavaScript、Go连续三年占据前七名,形成稳固的第一阵营 [1] - Visual Basic、SQL、Fortran、Ada、Perl、Delphi在8-12名展开激烈竞争,月度排名波动显著 [1][3] 新兴语言与传统语言的竞争态势 - Rust、Kotlin、Dart、Julia等新兴语言虽具备技术优势(如Rust的安全性、Kotlin的简洁性),但均未进入前十 [4] - 传统语言在特定领域保持不可替代性:SQL(数据库)、Fortran(科学计算)、Ada(航空航天/军工)、Perl(Linux运维)、Delphi(桌面开发) [5] - Ada因高安全性需求复兴,在"零容错"系统中成为首选 [4] Python的统治力与争议 - Python凭借AI/数据分析风口、丰富生态库和易用性实现快速增长,但性能短板显著(执行速度远低于C++) [11] - 行业出现"边吐槽边使用"现象,其AI御用语言地位强化了不可替代性 [8][11] - 若未来解决性能问题(如JIT编译/GPU加速),可能进一步扩大市场份额 [12] 月度排名详情 - 前十名依次为:Python、C++、C、Java、C、JavaScript、Go、Visual Basic、Ada、Delphi/Object Pascal [14] - 11-20名中,Fortran(12名)、SQL(13名)、Rust(18名)、Kotlin(20名)等语言竞争胶着 [17] - 21-50名包含Swift(21)、COBOL(22)、Ruby(23)、Julia(35)等语言,呈现长尾分布 [18] 历史趋势与数据来源 - TIOBE排名基于工程师数量、课程、供应商及搜索引擎数据,反映主流语言趋势 [20] - 历史数据显示编程语言市场呈现"头部固化+尾部混战"特征 [20]
2025 年 06 月编程语言排行榜|SQL 的未来在哪?SQL 算不算编程语言?
菜鸟教程· 2025-06-11 09:41
SQL 语言现状与趋势 - SQL 在 2025 年 6 月 TIOBE 排行榜跌至第 12 位,创历史最低 [2] - 2003 年 10 月曾达到历史峰值第 6 位,但 2004 年初因"是否属于编程语言"争议被移出榜单,2018 年因图灵完备性论证重新回归 [5] - 仍是数据库领域核心语言,广泛应用于银行交易、电商订单、医疗病历等结构化数据管理场景 [7] SQL 与 NoSQL 竞争格局 - AI 浪潮中非结构化数据需求增长,NoSQL(如 MongoDB、Redis)凭借 JSON/XML 格式灵活性和高扩展性对 SQL 构成实质性威胁 [10][12] - NoSQL 适用于海量数据、高并发读写、实时推荐等场景,类型包括文档型(MongoDB)、键值型(Redis)、列族型(Cassandra)和图数据库(Neo4j)[13][14][16] - 主流 SQL 数据库仍占据重要地位,包括开源产品 MySQL/PostgreSQL(占市场份额 65%)和商业产品 Oracle/SQL Server(企业级市场主导)[9] 编程语言市场格局 - Python 以 25.87% 的占有率稳居榜首,较第二名 C++(10.68%)领先超 15 个百分点,呈现碾压式优势 [20][22] - 2025 年 6 月前十名:Python、C++、C、Java、C、JavaScript、Go、Visual Basic、Delphi/Object Pascal、Fortran [23] - 11-20 名中 SQL 排名下滑显著(从 2024 年 8 位降至 12 位),Perl、R、Rust 等语言波动较大 [26] 技术基础设施演变 - 云数据库服务(Amazon RDS、Google Cloud SQL、Azure SQL)成为新增长点,提供托管式解决方案 [9] - 动态语言(Python、JavaScript)持续挤压静态语言(C++、Java)份额,反映开发效率优先趋势 [12][20] - 历史数据显示编程语言更迭加速,但各语言在特定领域(如 Fortran 科学计算、COBOL 金融系统)仍不可替代 [29]
2025 年 05 月编程语言排行榜|Python 统治了世界,其他编程语言都是弟弟
菜鸟教程· 2025-05-12 16:32
Python市场份额与增长 - Python在2025年5月TIOBE榜单中市场份额达25.35%,单月增长2.2%,创历史新高[1] - 与第二名C++的差距扩大至15%以上,呈现碾压式优势[3] - 历史排名仅次于2001年6月和10月的Java(当时统计语言较少)[1] 编程语言排名变化 - 2025年5月前十名:Python、C++、C、Java、C、JavaScript、Go、Visual Basic、Delphi/Object Pascal、SQL[24][25] - C++排名从2024年5月的第3升至第2,C从第2降至第3[25] - Go从第8升至第7,Visual Basic从第7降至第8[25] - R语言排名大幅上升,从第24升至第12[28] Python的优劣势分析 **优势** - 简洁易学的语法降低学习门槛,适合跨行业从业者[11] - 强大的生态系统(NumPy、Pandas、TensorFlow等)支撑数据科学和AI领域[12][13] - 应用广泛:数据分析(50%)、Web开发(49%)、DevOps(35%)、机器学习(31%)[16][22] **劣势** - 解释型语言性能较差,10亿次嵌套循环测试表现最差[6][10] - 运行时错误多,不适合安全关键系统(如航天控制)[4][5] 行业应用趋势 - 数据科学和AI崛起推动Python成为必学语言[13] - 主要应用领域包括Web开发(Django/Flask)、数据分析(Pandas)、AI(TensorFlow)、自动化脚本[22] - 教育用途占比28%,显示其作为入门语言的地位[16] 技术实现细节 - 性能测试基于M3 MacBook Pro(16GB RAM)的hyperfine工具[9] - 官网提供在线交互式解释器,支持无需安装的学习体验[18][20]