抛砖引玉,大家觉得哪种后端语言对 vibe coding 更友好?个人认为还得是 go

duanxianze 2026-07-15 15:51 1

我这么觉得有三个原因:
1 语法死板且简洁,语法糖不多,大多数写法比较固定;
2 语言比较新,社区分裂不多,常用的库比较统一;
3 静态类似,编译执行,比动态语言能更多的提前发现问题;


对比我个人用过的其他的:
1 node:typescript,拉中拉,一个 any 改三四次都还报错;
2 java,太啰嗦,浪费 token

最新回复 (67)
  • blackPanda 07-15 15:58
    1
    这个我和 ai 聊过,他给的排名:
    一梯队:python > typescript
    二梯队:go
  • lo0pback 07-15 16:01
    2
    我是 python 多,因为自己学过,相对熟悉,改起来方便,go 还没接触过。也没啥动力接触了。
  • hingle 07-15 16:03
    3
    个人觉得是 Rust ,编译器会输出详细的错误信息。
  • clemente 07-15 16:03
    4
    这个我用 agent 做过深度评测

    最好的是非编译型语言

    python+js+ts
  • clemente 07-15 16:03
    5
    第二个 因素是 存量代码占比
  • shintendo 07-15 16:05
    6
    rust
  • TimPeake 07-15 16:13
    7
    python > ts > 其他 ,差不多是 AI 的默认选择了吧
  • Ayanokouji 07-15 16:14
    8
    go +1 。这么说吧,搜索引擎搜索 golang 的相关问题少了很多,导致 go 的排名都下降了 (:狗头保命
  • skuuhui 07-15 16:34
    9
    node[ts]
  • xiaoz 07-15 16:37
    10
    我觉得是 Python 和 TS ,其次才是 Rust 和 Golang ,不过这只是我的主观感觉,无任何依据。
  • jackOff 07-15 16:43
    11
    python+java 基本上 ai 写的没什么大问题,arkts 就很糟糕了,基本上语法和 ts 语法混着写,要写不少提示词来纠正语法错误
  • duanxianze 楼主 07-15 16:43
    12
    @blackPanda
    @clemente #4
    @xiaoz 起码我个人用下来 ts 并不好用,eslint 会疯狂报错,虽然只是格式错误之类的,但是看着很烦
  • darklinden 07-15 16:44
    13
    你要是只用脚本,python 不二之选

    vibe coding 搞工程?强类型和花活儿少才是保持 ai 代码稳定的有力保障

    个人体感排序
    (rust ≈ golang) > (Java ≈ CSharp) > (c ≈ cpp) >> typescript >>> js/python/php

    * rust 和 golang 都是把限制做进编译器的,rust 可以靠拷打 ai 获得更好的内存保障,用不用得上不说,反正是个优点; golang 恨不得谁写 format 完都长一样
    * Java 和 csharp 老同位素了,Java 死板臭长极为适合 ai 生成,CSharp 虽然版本多花活儿多,,但是比不了 c 的 void *,也比不了 cpp 的能从还算新的 11 数到过了年估计要 27...老项目的 cpp 极易 ai 跑着跑着拿什么朝的剑斩什么朝的官了
    * typescript 虽然带类型,但是跑起来是 js ,这就导致可能你这一块儿看起来没问题编译没问题跑起来莫名其妙出问题,什么大门限高 3 厘米进来一只大象,只有跑起来才能查问题,ai 也免不了测半天还是莫名出 runtime 错误
    * js/php 不多说,高手玩出花低手只喊妈,和 ts 问题一样,让 ai 写测试很难测全,单块儿测你觉得全了也不敢保证跑着跑着会出啥状况。最可气的是傻子 python ,号称强类型除了卡 int 不能直接 print 必须加 str 就没别的活儿了,各种 formater 和 lint 跑完还是拉,和 js 坐一桌
  • darklinden 07-15 16:46
    14
    @duanxianze tslint 报错就是为了让类型过编译校验,强类型就是为了工程管理少出问题。如果 ai 搞不好,在 AGENTS.md 里加上它经常出错的报错类型的处理方案
  • clemente 07-15 16:59
    15
    @duanxianze harness 没做好。有前置工具做 check 啊
  • xgdgsc 07-15 17:07
    16
    感觉 Python 后端库调用 Julia 数据处理可以,都很节约 token,跑得也够快,需要人 review 的话也比较简洁易懂
  • cvooc 07-15 17:08
    17
    个人测试出来是 rust, 过不了编译就让 ai 一直 loop 到过编译.简单粗暴 deepseekV4flash 都可以胜任.
    反正最终出来的产物肯定能运行.
    其他语言的产物经常性遇到大量运行时报错, 还得返工.
  • tommark 07-15 17:13
    18
    我也觉得 go 非常适合 AI ,编译贼快,运行性能也很好
  • jackerbauer 07-15 17:16
    19
    必须 Python 第一
  • nc 07-15 17:17
    20
    如果写 web 业务的话其实 Java 、C#更合适,非要选一个那就是 Java 。当然,Go 很好,适合做 infra 开发
  • Yasuke 07-15 17:56
    21
    @cvooc 那是模型选得不好,gpt 和 claude 现在很少能遇到运行时报错
  • fioncat 07-15 18:05
    22
    Rust 啊,编译器可以教 AI 写代码,自我闭环了。
  • noahjsn 07-15 18:05
    23
    说 Rust 的人,不觉得 Rust 代码调试、重新编译很慢吗?
  • MENGKE 07-15 18:07
    24
    ts 正在逐渐超越 python
  • craftsmanship 07-15 18:22
    25
    行了知道你连 TS 都搞不定只能写写 Go 了
  • xiaoz 07-15 18:24
    26
    @duanxianze #12 ,我倒是觉得 TS 生态挺好的,而且对 AI 来说确实很方便。就是某些情况下比较吃内存。
  • 54hdr 07-15 18:28
    27
    node.js 特别是 js ,那些说 ai 代替前端的人,也间接证明了 ai 擅长 js ,没想吧。咱门前端直接调用现成的数据库关系表和后端接口加 trae ,直接前后端统一语言,效率起飞
  • ebushicao 07-15 18:31
    28
    从你的描述来看你可能日常用的第三梯队模型,但凡用个第二梯队的比如 deepseekv4pro 都不至于在那 any ,还 eslint 疯狂报错。个人建议你如果不方便订阅 gpt 和 claude ,GLM-5.2 是个不错的选择。
  • utodea 07-15 18:49
    29
    纯 go 的 agent: https://github.com/usewhale/whale

    除了 tui 上选择少,ai 并不擅长相关的框架之外,我感觉还行。特别是在纯 terminal 的时候,很小。
  • cozof 07-15 18:50
    30
    AI 似乎更擅长 python 。有时没跟它说清楚,它会给我一个 python 脚本,python 就 pyhon 吧,放服务上一执行,告诉我缺这少那的。不能用 shell 的情况还是用 go 吧,交叉编译一下放上去直接执行。
  • msg7086 07-15 18:54
    31
    我现在 vibe 项目已经基本收敛到 Java 和 C++两项了。
    前者做网站后端或者复杂点的工具,后者做些性能密集型的东西。
  • anivie 07-15 19:17
    32
    对 AI 来说没这么多花里胡哨的追求,什么训练内容多他什么写得好,go 这种刚火没几年的能贡献多少训练素材,AI 怎么喜欢?
  • aicong2021 07-15 19:20
    33
    个人感觉 Rust 最好,无论多复杂的项目,只要编译通过都能跑起来,剩下的都是需求拆解、边界约束等,不用担心语言特性导致的莫名其妙 bug
  • stdout 07-15 19:51
    34
    你的感觉是对的,但是要看模型,google 的模型 gemini 对 go 训练最多,写起来非常好,比 python 效果好太多,我用 go 写个 llm gateway 和 llm mock 就几分钟的事情,几乎无问题,几乎无需重构。
  • stdout 07-15 19:53
    35
    python 的花活太多了,要严格控制缰绳,可以做到非常好。但是要操心太多。
  • yanyuechuixue 07-15 19:58
    36
    rust
  • CoderChan 07-15 20:36
    37
    typescript ( JS )是训练物料最多的,优先使用。其次可以 python 、go
  • lsls931011 07-15 20:54
    38
    我觉得是 ts , 一种语言可以写网页、后端、前端、移动端,全栈语言,在 AI 时代,更加完美。
  • yh7gdiaYW 07-15 21:17
    39
    必然是 python ,大模型对缩进的适应性远好于括号匹配
  • lkxjlkejwr 07-15 22:15
    40
    感觉上 gpt 还是喜欢首选 node ,我都要打断他让他用 go 。但是 py 感觉他自己思考或者做最小化验证的时候会写,真正产出几乎没有。
  • xiaomushen 07-15 22:27
    41
    强类型会好一些
  • ZeroDu 07-15 23:32
    42
    只要不会经常出现写出来的编译不通过、要修改很多很多次的语言就是 OK 的
  • komorebiSaw 07-16 01:17
    43
    我虽然是用 python 的,但觉得 go 配 AI 更好
  • Newb1e 07-16 01:27
    44
    我觉得 ts 挺好的,强制类型校验,开启严格模式。python 还得配置格式检查和类型检查工具,不然开发体验差很多。
  • Alwaysonline 07-16 01:40
    45
    折腾来折腾去,还是 TypeScript 顺手,关键是同样的提示词,页面就是漂亮啊

    纯对外接活来说,真方便高效。
  • TimeDong 07-16 08:59
    46
    golang ?打包 exe.....
  • echoZero 07-16 09:29
    47
    go 吧 小工具 我会指明用 golang 来做,这样没有依赖,丢上去就能跑。
  • yukunZhan9 07-16 09:30
    48
    @hingle 同觉得 rust ,但是本机编译太老火了,mac 磁盘本就不够
  • lovedebug 07-16 09:32
    49
    typescript ,会成为 ai 界的机器语言了~
  • c0011 07-16 09:32
    50
    感觉 ai 时代的 python 好复杂
  • digdug 07-16 09:34
    51
    go 和 python
  • layxy 07-16 09:38
    52
    ai 场景下,越是主流的语言,vibe coding 效果更好,毕竟 ai 训练取决于开源代码仓库的数量和质量,主流语言会有大量的开源仓库,其实我觉得 python,ts,go,java,php 使用 vibe coding 的效果都差不多,我个人更喜欢强类型编译型语言
  • lanten 07-16 09:40
    53
    rust
  • hefish 07-16 09:41
    54
    go 好是好 。。。
    就是写 mvc 的时候看着别扭。
    虽然基本是给 ai 看的,人不需要看。
  • fovecifer 07-16 09:47
    55
    我认为底线是强类型语言
    其次是八股文比较多的语言,这样限制比较多,众所周知,限制越多,AI 越不容易走偏
    最后发现还是 java 最合适?
    但是我个人比较喜欢用 go
  • sampdoria 07-16 09:51
    56
    提供一个视角:
    https://www.zhihu.com/question/1992208967498236682/answer/2028074933238907033?share_code=FJX0Qj4eXdrg&utm_psn=2061024657847869602

    这篇文章从缩进 vs 括号这个编程语言的选择上,解释了 LLM 对 python 的偏好,个人觉得很有启发性
  • liangc230323 07-16 09:57
    57
    @hingle 实践下来,Rust 确实不错,但是 rust 编译太消耗磁盘,动不动 1-200G 的磁盘没了
  • wuyiccc 07-16 10:01
    58
    为什么 ai 时代了还有这种问题?
  • fang2hou 07-16 10:25
    59
    类型还是要的,目前靠 lsp 还有类型检查能大大防止 AI 中途出现的问题,也方便重构。
    typescript 其实也不错,包版本变化快的话容易让 AI 没法快速抓到新版本的使用方式,经常要去查文档,Go 默认向后兼容几乎没有类似问题。而且 npm 相关的投毒多,go 相对放心
    自己私下搞项目感觉 ts 是最好用的,公司代码就 go 或 rust 。
  • rb6221 07-16 11:08
    60
    按这种标准我能出一百个反驳理由来
    ts 的类型检查错误会更多
    py 的训练语料大多不是 web 业务系统的语料,写个脚本而已
    go 的写法固定死板,生态有限,遇到较复杂的需求网上都找不到最佳实践的话,模型直接抓瞎

    反而是 java
    你说啰嗦?都丢给 AI 写了,他又不嫌啰嗦,反而语法严谨,安全性更高
    你说费 token ?事实上写代码和读代码本身消耗的 token 根本不多,主要还是推理思考。这个理由意义不大。反而语法越清楚明了的,推理思考的速度越快。
    其他优点呢?生态庞大,各种复杂写法、奇技淫巧都能在网上搜到最佳实践,给了模型很好的范本。库成熟稳定,兼容性好。

    rust 为什么受欢迎,还是一群粉丝捧的,他们平时都没机会或者说没能力写出有一定复杂度的 rs 程序,现在有了 AI 正好。而他们写的也大多是某个单点功能,而并不是 web 业务系统。你会说大厂有,没错,但那是在庞大内部知识库和严格复杂的 spec 加成下才能做到的,不是你选择的理由。

    至于 go ,在 AI 时代以后势头甚至没 rust 猛,直接被其上位替代了。护城河完全被击垮。

    ts 确实不错,在 AI 时代以前就是欧美科技公司常用的后端语言,只是国内用的不多。他早已证明了自己的价值,在 AI 时代能用上也是顺理成章。

    最后的结论依然是 ts 和 java

    你说 C#?拜托,写 C#的人不是 40 老登就是 toB 大头兵,你指望他们用上 AI ,再过几年吧。哦对了,上位机的市场很小,对整体根本没有影响。
  • wweir 07-16 11:24
    61
    go 格式稳定、语言特性少、面对的场景比较专注、编程习惯相对较为一致,在擅长的领域,不需要大量的预料,也能训练出很好的效果。

    用 rust 也写了项目,最大的问题不是输出质量的问题,而是编译速度、产物大小。导致 AI 生成的速度、流畅性严重受限。

    另外就是简单工具脚本 python 还是王道。
    ts 在互联网项目开发早期也是挺好,等需求稳定了,直接重构成 rust 好了。vibe coding 的重构能力非常快速、稳定。
  • TophTab 07-16 11:32
    62
    两个维度;
    语料多、可行性好:Python 、typescript
    性能好、省资源:go 、rust
  • visper 07-16 11:37
    63
    后端大工程的话,静态类型最好还是要的。go,rust,java.
  • IamUNICODE 07-16 11:37
    64
    rust
  • TophTab 07-16 11:46
    65
    还有,JAVA 纯路边。
    就当前内存价格,JAVA 和 AI 必须死一个。
    既然当前 AI 没死,那谁得死?
  • hafuhafu 07-16 11:55
    66
    我觉得是 nodejs ( ts )。而且不仅后端,未来 agent 开发我感觉也是 ts 代替 py 。
  • iuyo5678 07-16 12:10
    67
    之前给团队分享过,选开发语言,其实就两点:
    1. 不选冷门的,语料少,代码一次成功率有问题,比如之前用 godot 第一次 vibe 出来基本都不满意。或者有问题,
    2. 不选自己不懂的,项目还是要维护的,自己不懂,不熟悉的,那就真靠模型,听天由命了。
* 帖子来源V2EX
返回