工具 5 分鐘閱讀

用 Claude 輔助寫程式的正確姿勢:Prompt 工程實戰

用 Claude 輔助寫程式的正確姿勢:Prompt 工程實戰

前言

根據我的經驗,AI 輔助寫程式已經不是未來式,而是現在進行式。這篇分享我用 Claude 輔助日常開發的實際經驗和技巧。

AI 輔助開發的正確心態

首先要建立正確的期待:

  • AI 是助手,不是替代品:你需要判斷生成結果是否正確
  • Prompt 品質決定輸出品質:隨便問隨便答
  • 需要程式基礎:看不懂生成的程式碼就危險了

最適合 AI 輔助的場景

1. 樣板程式碼

重複性高的程式碼讓 AI 來寫最適合:

Prompt:
請幫我建立一個 Laravel Resource Controller
用於管理 Product model
包含 index(分頁)、store(驗證)、show、update、destroy
Product 有 name, price, description, category_id 欄位

2. 單元測試

Prompt:
以下是我的 OrderService class,
請用 Pest PHP 幫我寫單元測試,
涵蓋:建立訂單成功、庫存不足、金額計算
[貼上程式碼]

3. 程式碼重構

Prompt:
以下 function 太長了,請幫我重構,
拆分成更小的 methods,
遵循 Single Responsibility Principle
[貼上程式碼]

4. 除錯

Prompt:
這段 React 程式碼在 useEffect 中發生無限迴圈,
請幫我找出原因並修正
[貼上程式碼和錯誤訊息]

有效的 Prompt 技巧

1. 提供完整上下文

❌ 不好:
幫我寫一個 React 元件

✅ 好:
幫我寫一個 React 元件,使用 TypeScript,
功能是商品列表,每個商品顯示名稱、價格、圖片
用 Tailwind CSS 做 responsive grid layout
資料從 props 傳入,型別是 Product[]

2. 指定技術棧和版本

✅ 好:
使用 Laravel 11、React 18、TypeScript 5
搭配 Inertia.js v2

3. 要求解釋

✅ 好:
請幫我實作 Laravel Observer pattern,
並用註解說明每個 method 的用途

4. 分步驟提問

不要一次問太大的問題。例如建一個訂位系統,分成:

  1. 先請 AI 幫忙設計資料庫 schema
  2. 再請它寫 API 端點
  3. 然後寫前端元件
  4. 最後寫測試

不適合完全依賴 AI 的場景

1. 架構設計

系統架構需要根據具體的業務需求和限制來設計,AI 缺乏對你專案全貌的理解。

2. 安全性相關

金流串接、認證授權等安全性關鍵的程式碼,一定要人工審查。

3. 商業邏輯

複雜的業務規則涉及太多 domain knowledge,AI 很難完全理解。

我的日常工作流

1. 規劃架構和資料模型(自己思考)
2. 用 AI 快速產生樣板程式碼(Claude)
3. 人工審查和調整(自己判斷)
4. 用 AI 寫測試(Claude)
5. 手動測試和除錯(自己操作)
6. 用 AI 寫文件和註解(Claude)

這個流程讓我的開發速度提升了大約 40%,同時保持程式碼品質。

工具搭配

搭配 VS Code 的 AI 外掛,可以在編輯器中直接使用 AI 補全,不用切換視窗。

小結

AI 輔助寫程式的關鍵在於:知道什麼時候用、怎麼問、以及如何驗證結果。 把它當成一個很厲害的 pair programming 夥伴,而不是一個可以完全信任的程式產生器。

如果你需要類似的系統,歡迎聯繫討論。

#AI #Claude #Prompt
Thousand Lab

Thousand Lab