50万行代码不敢交给AI?TypeScript之父这话戳中了开发者的痛
【导读】TypeScript之父Anders Hejlsberg认为当前AI大模型本质是高级复读机,不适合确定性代码迁移。团队为提升性能,将编译器用Go重写而非AI翻译,并指出未来变革在工具链。
你有没有试过用AI做代码迁移,结果新代码跑起来要么报错,要么逻辑跟原代码差了点意思,最后还是得逐行核对?我上周就碰到这么档子事,同事用AI转了几百行TypeScript代码,结果藏了个变量作用域的问题,排查到半夜才搞定。
🔥 AI不是“万能代码转换器”,确定性场景它真不行
昨天跟张江的几个老伙计喝咖啡,聊到TypeScript之父Anders的新访谈,大家都深有同感。Anders直接说,当前AI大模型本质就是“高级复读机”——把别人做过的内容重新吐出来,再做些简单推演。
团队当初要迁移50万行编译器代码,最先试了AI翻译,结果效果一塌糊涂。代码迁移要的是100%的确定性,新代码必须跟原代码逻辑完全一致,但AI的“幻觉”问题根本没法避免,哪怕只是一点点偏差,都得逐行人工检查,反而比自己写还费时间。在需要绝对精准的确定性任务面前,AI的“灵活”反而成了软肋。
💡 TypeScript7.0放大招:原生编译器性能暴增10倍
这次TypeScript7.0的核心升级,就是把原来基于V8引擎的编译器,换成了Go语言写的原生版本,性能直接提了10倍——一半是原生代码的优势,另一半是用了共享内存并发。
选Go这事当初还引发了争议,不少C#开发者纳闷,Anders自己是C#之父,为啥不选C#?其实我太懂了,Go的语法和设计思路跟JavaScript高度相似,50万行代码迁移,语法接近能省不少坑。而且Rust被直接排除,因为它没有自动垃圾回收,也不支持迁移需要的循环数据结构。工程问题的核心永远是“解决问题”,而不是“情怀优先”。
🔮 TypeScript的未来:语言稳得住,工具链要翻天
Anders说,TypeScript未来不会激进更新,还是跟着JavaScript的标准化走,真正的变革会在工具链上。现在AI已经不是IDE里的小插件了,而是要变成开发者的“辅助工具”——比如用AI生成辅助迁移的程序,而不是直接翻译代码。
我们团队现在已经在用AI写单元测试模板了,确实省时间,但核心业务代码还是得自己写。AI适合做那些重复但不要求绝对精准的活,核心的确定性工作,还得靠人或者靠谱的工具。未来的开发模式,是AI当“助手”,人做“决策者”,工具链则是连接两者的核心。
Anders的话其实给所有开发者提了个醒:AI不是万能的,别迷信它能搞定所有事。你在开发中用过AI做代码迁移吗?是踩坑了还是真的省了时间?欢迎在评论区唠唠~
想及时获取AI圈最新干货和踩坑经验,别忘了关注咱们公众号!