Skip to content

Vibe Coding 實戰指南:PIV 框架與三大黃金法則

當 AI 成為你的 Pair Programming 夥伴,你需要的不是更多技術,而是更好的協作框架。

作者:Ray 日期:2025 年 12 月


前言

Vibe Coding 是一種與 AI 編程助手(如 Claude Code、GitHub Copilot)協作開發的新型態工作模式。你描述意圖,AI 產出程式碼,聽起來很美好——但實際操作時,許多開發者會發現:

  • AI 經常「過度發揮」,做了你沒要的東西
  • 產出的程式碼不確定能不能用
  • 來回修改比自己寫還累

問題不在 AI 不夠聰明,而在於我們缺乏一套與 AI 協作的方法論

本文將介紹 PIV 框架三大黃金法則,幫助你在 Vibe Coding 中保持掌控感,同時最大化 AI 的生產力。


PIV 框架:與 AI 協作的基本節奏

PIV 是三個階段的縮寫:Planning → Implementation → Validation

這不是什麼新概念,但在 Vibe Coding 的情境下,它的重要性被大幅放大——因為 AI 不會幫你思考「該不該做」,它只會執行「怎麼做」。

P - Planning(規劃)

在下指令給 AI 之前,先問自己:

  • 輸入是什麼? 這個功能接收什麼參數或資料?
  • 輸出是什麼? 預期產生什麼結果?
  • 邊界條件? 空值、錯誤輸入、極端情況怎麼處理?
  • 這個功能的範圍? 只做這件事,不多不少。

❌ 常見錯誤

「幫我做一個用戶登入功能」

這種模糊指令會讓 AI 自行腦補大量細節,產出可能包含你不需要的 OAuth、記住我、密碼重設等功能。

✅ 較好的做法

「實作一個登入函數:
- 輸入:email 和 password
- 驗證:檢查 email 格式,password 至少 8 字元
- 成功回傳 user 物件,失敗拋出 ValidationError
- 不需要實作資料庫連接,用 dependency injection」

規劃階段的時間投入,會在後續省下數倍的修改時間。


I - Implementation(實作)

這是 AI 發揮的階段。你的角色轉變為觀察者與引導者

  • 觀察 AI 的思路:它是否理解你的意圖?
  • 適時中斷:發現方向錯誤就停下來,補充資訊
  • 保持小步迭代:一次只做一件事(詳見後文)

這個階段的重點是「讓 AI 做事,但保持監督」。


V - Validation(驗證)

這是 Vibe Coding 中最容易被忽略,卻最關鍵的環節。

AI 產出的程式碼看起來很專業,語法正確,結構漂亮——但這不代表它是對的。

驗證的方式包括:

驗證方法適用情境
執行測試有寫測試的情況(推薦!)
git diff審查 AI 改了什麼
實際執行手動測試功能
Code Review逐行閱讀理解邏輯
問 AI 解釋「解釋這段程式碼在做什麼」

🚨 警告

不驗證就接受 = 埋地雷。

AI 產生的程式碼可能包含:

  • 隱微的邏輯錯誤
  • 安全漏洞
  • 不符合專案慣例的寫法
  • 過度設計或效能問題

養成習慣:每次 AI 產出後,至少做一種驗證。


三大黃金法則

在 PIV 框架之內,以下三個法則能讓你的 Vibe Coding 更加順暢。

法則一:Small Steps(小步迭代)

每次只請 AI 做一件小事。

為什麼重要?

  • 出錯容易定位:改動小,問題範圍就小
  • 審查更輕鬆git diff 只有幾十行,而不是幾百行
  • 回退成本低:不滿意?git checkout 重來

實踐方式

# ❌ 不好的做法
「幫我實作完整的購物車功能,包含新增、刪除、修改數量、計算總價、套用折扣碼」

# ✅ 好的做法
「先實作購物車的新增商品功能」
(完成、驗證、commit)
「接著實作刪除商品功能」
(完成、驗證、commit)
...

口訣:一個 prompt,一個功能,一個 commit。


法則二:TDD / Test First(測試先行)

讓 AI 先寫測試,再寫實作。

為什麼在 Vibe Coding 中特別有效?

  1. 測試即規格:測試案例就是你對功能的精確描述,AI 不用猜你要什麼
  2. 自動驗證:有了測試,Validation 階段變成一鍵執行
  3. 防止過度設計:AI 只需要讓測試通過,不會亂加功能

實踐方式

# 第一步:請 AI 寫測試
「幫我寫測試案例,驗證 calculateTotal 函數:
- 空購物車回傳 0
- 單一商品回傳該商品價格 × 數量
- 多商品回傳加總」

# 第二步:確認測試符合預期

# 第三步:請 AI 實作
「現在實作 calculateTotal 讓測試通過」

# 第四步:執行測試驗證

測試就是你和 AI 之間的契約。


法則三:YAGNI(不做不需要的事)

You Ain't Gonna Need It — 你不會需要它的。

為什麼重要?

AI 很容易「過度發揮」:

  • 你要一個簡單函數,它給你一個完整的 class 架構
  • 你要處理一種情況,它幫你預留了十種擴展點
  • 你沒提到錯誤處理,它自作主張加了複雜的 retry 機制

這些「貼心」的設計往往造成:

  • 程式碼變複雜,難以維護
  • 引入你不理解的邏輯
  • 增加測試負擔

實踐方式

在 prompt 中明確約束:

「只實作這個功能,不要加額外的擴展設計」
「保持簡單,不需要考慮未來的擴展性」
「不要加入我沒提到的功能」

口訣:現在不需要的,現在就不做。


框架與法則的關係

法則對應 PIV 階段作用
Small Steps貫穿整體控制每次迭代的範圍
TDDP + V規劃時定義規格,驗證時自動檢查
YAGNIP限制範圍,避免過度設計

PIV 是框架骨幹,三大法則是執行戰術。 兩者搭配,才能在 Vibe Coding 中從從容容,游刃有餘。


實戰範例

假設你要實作一個「計算訂單折扣」的功能:

Step 1: Planning

思考並寫下:

  • 輸入:訂單金額(number)、折扣碼(string)
  • 輸出:折扣後金額(number)
  • 規則:SAVE10 打九折、SAVE20 打八折、無效碼不打折
  • 範圍:只做折扣計算,不處理折扣碼的驗證來源

Step 2: Test First

「請寫測試案例:
1. 無折扣碼,回傳原價
2. SAVE10 折扣碼,回傳 90%
3. SAVE20 折扣碼,回傳 80%
4. 無效折扣碼,回傳原價
只測試這四種情況,不要加其他的。」

Step 3: Implementation

「實作 applyDiscount(amount, discountCode) 讓測試通過。
保持簡單,不要預留其他折扣類型的擴展。」

Step 4: Validation

  • 執行測試 ✅
  • git diff 確認改動 ✅
  • Commit ✅

總結

Vibe Coding 的成功關鍵不是更厲害的 AI,而是更好的人機協作方法

記住這個口訣:

PIV 打底,小步走,測試領,不貪多。

  • Planning:想清楚再動手
  • Implementation:讓 AI 做,你監督
  • Validation:驗證後才接受
  • Small Steps:一次一小步
  • TDD:測試先行
  • YAGNI:不做多餘的事

掌握這套方法論,你會發現 AI 不再是難以控制的黑盒子,而是一個高效可靠的開發夥伴。


🎁 Bonus:實戰配置檔案

想要在實際開發中應用 PIV 框架和三大法則?我準備了一份 Claude Code 開發規則配置檔,你可以直接用在與 AI 協作時:

📥 下載 Claude Code 開發規則

這份配置檔包含:

  • PIV 框架的詳細執行步驟
  • 三大黃金法則的實踐指南
  • 溝通規則與禁止事項
  • 可直接套用的開發口訣

將這份規則提供給你的 AI 助手(如 Claude、ChatGPT),能讓協作更加順暢高效。


延伸閱讀

MIT Licensed