AI 程式設計的底層原則:壞程式碼在 AI 時代更為致命

原始來源與檔名:20260512_2026-05-12T093156+0800-AI 编程的底层原则.md

來源:[[@SaitoWu]] / X — 2026-05-09 原始檔名:2026-05-12T093156+0800-AI 编程的底层原则.md


NAPKIN | 餐巾紙

餐巾紙公式

Bad Code in AI Era = Exponential Entropy (AI amplifies mess). Vibe Coding / Specs-to-code = Divesting from Design. AI Workflow = Grill Me (Shared Blueprint) + Ubiquitous Language + TDD (Fast Feedback) + Deep Modules.

Matt Pocock 在他的演講中打破了「AI 時代隨便寫 Code 就好」的迷思。他指出,盲目依賴「寫規格讓 AI 產 Code (Specs-to-code)」本質上是一種放棄設計的 “Vibe Coding”。在爛代碼庫中,AI 只會在混亂上堆疊混亂。真正的軟體工程原則(如領域驅動設計的通用語言、TDD 測試驅動開發、以及 Ousterhout 提出的「深模組 Deep Modules」)在 AI 時代比過去 20 年更值錢。工程師的職責不再是敲鍵盤,而是「守住設計邊界」。

一句話

別以為有了 AI 就可以亂寫程式。在架構混亂的專案裡,AI 只會加速系統的崩潰。你必須用「Grill Me」技巧讓 AI 瘋狂追問你以對齊概念;用「通用語言」統一你們的對話詞彙;用 TDD (測試驅動) 限制 AI 一次不要寫太多;並且將系統重構成「介面極簡、內部複雜」的深模組 (Deep Modules)。AI 只是前線步兵,你必須是運籌帷幄的戰略指揮官,你的老派軟體工程基礎知識,現在是稀缺資源。

餐巾紙草圖

[ Shallow vs. Deep Modules in AI Coding ]

SHALLOW MODULES (Bad for AI)
[ Complex Interface ] -> [ Little functionality ]
* AI gets lost in a maze of details. It breaks things easily.

DEEP MODULES (Ideal for AI)
[ Simple Interface ] -> [ Massive, hidden functionality ]
* AI treats it as a black box. It modifies internals safely without breaking the whole system.

ROUND 1: SKELETON | 骨架掃描

“這篇文章在說什麼”

ROUND 2: DISSECTION | 血肉解剖

“憑什麼這麼說”

核心論證鏈

  1. AI 是放大器,不是重構器: Specs-to-code 模式的問題在於,每次只修改規格而不關注整體架構,會導致系統逐漸腐化。AI 不會主動做高階架構抽象,它只會「在現有的泥沼中,幫你蓋出更精緻的泥巴屋」。
  2. 工程師角色的轉變: 你的大腦無法追上 AI 產出程式碼的速度。因此,你必須把模組當成「灰盒」。你的職責是定義介面、編寫邊界測試、維護領域語言,而將具體的 if/else 實作細節外包給 AI。

關鍵證據

邊界條件

ROUND 3: SOUL | 靈魂提取

“還能怎么用”