选择你的技术栈:语言一览
当你指挥 AI 来开发软件时,你挑选的语言依然很重要——非常重要。代码是 AI 写的,但后果由你承担:你交付有多快、部署有多容易、多久会撞上一堵墙。好消息是,你不需要精通这些语言中的任何一门。你只需要懂得足够多,能做出一个明智的选择,并能识别出 AI 何时正把你引向一条痛苦的路。
本章会逐一过一遍值得关注的语言,讲清每一门真正擅长什么、在哪里会咬人,以及——这对 vibe coding 至关重要——AI 助手对它的驾驭能力如何。最后我们会给出一份按目标选择的极简指南。
开始前先提一句:AI 助手对那些拥有海量公开代码的热门语言,要远远强于对小众语言的处理。这可不是个小差别。它往往是决定你的项目是否顺利的最大单一因素。流行度本身就是一项功能。当一门语言及其主要框架在公开仓库里出现过几百万次时,AI 就见过了每一种常见模式、每一个典型错误、每一种地道的修法。如果没有,你就要为这份稀缺埋单——以失败的尝试和听起来煞有介事的胡话来偿付。
在看语言名字之前,先记住一幅图:你写的代码,从来不是机器真正运行的东西。中间有某个东西把你的文本变成运行中的软件——要么是编译器(提前把全部翻译成一个可运行的文件),要么是解释器(一行一行地读取并运行)。你选的语言决定了你走哪条路。
你 中间环节 机器
┌────────┐ ┌──────────┐
│ 源代码 │──┬──▶ COMPILER ──▶ binary file ──────▶ │ 在CPU上 │
│ (文本) │ │ (Go, Rust) (one file) │ 运行 │
│ │ │ │ │
└────────┘ └──▶ INTERPRETER ──逐行 ────────────▶ │ 打印 │
(Python, JS) 读取 │ 输出 │
└──────────┘
compiled = 先翻译,后运行
interpreted = 边运行边翻译
