選擇你的技術棧:語言一覽
當你指揮 AI 來開發軟體時,你挑選的語言依然很重要——非常重要。程式碼是 AI 寫的,但後果由你承擔:你交付有多快、部署有多容易、多久會撞上一堵牆。好訊息是,你不需要精通這些語言中的任何一門。你只需要懂得足夠多,能做出一個明智的選擇,並能識別出 AI 何時正把你引向一條痛苦的路。
本章會逐一過一遍值得關注的語言,講清每一門真正擅長什麼、在哪裡會咬人,以及——這對 vibe coding 至關重要——AI 助手對它的駕馭能力如何。最後我們會給出一份按目標選擇的極簡指南。
開始前先提一句:AI 助手對那些擁有海量公開程式碼的熱門語言,要遠遠強於對小眾語言的處理。這可不是個小差別。它往往是決定你的專案是否順利的最大單一因素。流行度本身就是一項功能。當一門語言及其主要框架在公開倉庫裡出現過幾百萬次時,AI 就見過了每一種常見模式、每一個典型錯誤、每一種地道的修法。如果沒有,你就要為這份稀缺埋單——以失敗的嘗試和聽起來煞有介事的胡話來償付。
在看語言名字之前,先記住一幅圖:你寫的程式碼,從來不是機器真正執行的東西。中間有某個東西把你的文本變成執行中的軟體——要麼是編譯器(提前把全部翻譯成一個可執行的檔案),要麼是直譯器(一行一行地讀取並執行)。你選的語言決定了你走哪條路。
你 中間環節 機器
┌────────┐ ┌──────────┐
│ 原始碼 │──┬──▶ COMPILER ──▶ binary file ──────▶ │ 在CPU上 │
│ (文本) │ │ (Go, Rust) (one file) │ 執行 │
│ │ │ │ │
└────────┘ └──▶ INTERPRETER ──逐行 ────────────▶ │ 列印 │
(Python, JS) 讀取 │ 輸出 │
└──────────┘
compiled = 先翻譯,後執行
interpreted = 邊執行邊翻譯
