粹 學
跳到內容

Claude Code 零基礎入門 — 下集:實戰演練

Claude Code 零基礎入門 第 2 集

Claude Code 零基礎入門 — 下集

觀看原始 YouTube 本文根據原 YouTube 整理,版權歸原作者所有
Claude Code 上集筆記 先備

配置與核心觀念 — 如果還沒讀過上集,建議先看

原始影片(YouTube)

柚智夫妻 X 雷蒙三十 — Claude Code 零基礎入門下集

youtube.com ↗

上集介紹了工具設定,下集進入真實工作場景。在開始之前,有一個心態轉換非常重要:

你的角色不是「指揮官」,而是「產品經理(PM)」。

指揮官告訴 AI「先做 A,再做 B,然後做 C」——這樣很累,而且容易出錯。

PM 告訴 AI「我需要一個功能,成功標準是 X,限制條件是 Y,截止是 Z」——然後等 AI 交付,做 code review,提出修改意見。

指揮官思維PM 思維
逐步下指令定義成功標準
告訴 AI 怎麼做告訴 AI 要做什麼
遇到錯誤手動修讓 AI 自己 debug
效率:低效率:高

一個 Next.js 14 專案,需要新增一個 /api/posts 端點,支援 GET(列表)和 POST(建立),用 Prisma + PostgreSQL。

在這個 Next.js 14 專案裡,建立 /api/posts 端點:
需求:
- GET /api/posts:分頁列表(page, pageSize 參數),回傳 posts 陣列 + total
- POST /api/posts:建立新 post,需要 title(必填)、content(必填)、authorId(必填)
技術要求:
- 用 Prisma 操作資料庫(schema 在 prisma/schema.prisma)
- 用 Zod 驗證 request body
- 回傳格式要跟現有 /api/users 一致
- 加上適當的錯誤處理(400 驗證錯誤、500 伺服器錯誤)
成功標準:
- npm run test 全部通過
- 用 curl 手動測試 GET 和 POST 都正確回應
- TypeScript 沒有 type error

Claude Code 收到這個任務會:

  1. 讀取 prisma/schema.prisma 確認 Post model 結構
  2. 讀取現有的 /api/users 確認回傳格式規範
  3. 建立 app/api/posts/route.ts
  4. 安裝需要的套件(如果 Zod 還沒裝)
  5. 寫測試
  6. 跑測試,如果失敗自行修改
  7. 回報完成,附上測試結果

AI 不會每次都做對,學會有效地給回饋是使用 Claude Code 的關鍵技能。

類型一:邏輯錯誤(AI 誤解需求)

# ❌ 不有效的回饋
「這樣不對,重做。」
# ✅ 有效的回饋
「分頁邏輯有問題。當我傳 page=2&pageSize=10,
你的 skip 計算是 page*pageSize = 20,
但應該是 (page-1)*pageSize = 10。
請修正這個計算,並確認 page=1 時 skip=0。」

類型二:測試失敗(執行期錯誤)

直接把錯誤訊息貼給 Claude Code:

測試失敗了,錯誤如下:
[貼上完整的 stack trace]
請找出原因並修正。

類型三:不符合慣例(風格問題)

功能是對的,但有幾個地方不符合我們的慣例:
1. 錯誤處理應該用 AppError class(在 lib/errors.ts),
不要直接 throw new Error()
2. 回傳格式要包 { success: true, data: ... },
不要直接回傳裸資料
請對應地修改。

Claude Code 支援多種自主執行模式,其中最強大的是 --dangerously-skip-permissions(需要你充分信任 AI 且有版本控制保護)。

更推薦的做法是在 CLAUDE.md 裡設好邊界,然後用 Session 授權:

# 可自行執行(不需詢問)
- 讀取任何檔案
- 執行 npm run dev/build/test/lint
- 執行 git status/diff/log
- 修改 src/ 目錄下的任何檔案
# 需要詢問才能執行
- 安裝新的 npm 套件
- 修改 package.json、tsconfig.json
- 執行 git commit、git push
- 刪除任何檔案
# 好的長任務描述
幫我重構 UserService(在 services/user.service.ts):
1. 把所有資料庫操作抽到 UserRepository
2. 加上 caching(用 Redis,client 在 lib/redis.ts)
3. 補上完整的單元測試(mock 掉 DB 和 Redis)
4. 更新所有呼叫 UserService 的地方(用 grep 找)
完成後跑 npm test 確認沒有 regression。
如果遇到不確定的設計決策,先做出來,做完後跟我說你做了什麼選擇和原因。

Claude Code 很擅長 debug,但「如何給 bug 報告」決定了效率。

有個 bug 需要修:
**現象:**
用戶登入後,第二次 refresh 頁面就會被登出
**重現步驟:**
1. 登入(/login)
2. 第一次 refresh → 正常
3. 第二次 refresh → 跳回登入頁
**預期行為:**
只要 session 未過期,refresh 不應該登出
**我已排除的可能性:**
- JWT 過期時間設了 7 天,不是過期問題
- /api/auth/me 回傳正確的 user 資料
**相關檔案:**
- middleware.ts(路由保護)
- lib/auth.ts(JWT 驗證)
- app/(auth)/login/page.tsx
請找出原因並修正,修完後說明是什麼問題。
  • 不怕「看錯眼」,每行都會仔細讀
  • 能快速 grep 整個 codebase 找相關代碼
  • 不會因為「這段代碼是我寫的」而有先入為主的偏見

Claude Code 可以直接操作 git,把版本控制整合進工作流程。

Terminal window
# 在 CLAUDE.md 裡定義 commit 規範
# 然後就可以叫 AI 直接 commit
> 這個功能做完了,幫我 commit,
message 要描述你做了什麼,用英文,動詞起頭
幫我 review 最近 3 個 commits 的改動,
重點檢查:
1. 有沒有潛在的 security issue
2. 有沒有違反 CLAUDE.md 裡定義的 coding standards
3. 有沒有遺漏的 edge case
用條列的方式回報,嚴重問題標記 [CRITICAL]

完整的 Claude Code 工作流建議:

  1. 開始前:確認 CLAUDE.md 有最新的專案資訊和規範
  2. 給任務:目標導向,附成功標準,提供參考錨點
  3. 執行中:讓 AI 自己跑,不要一直插嘴(除非它問你)
  4. Review:仔細看 diff,像 review 同事的 PR 一樣
  5. 回饋:具體指出問題,不要說「重做」
  6. commit:確認沒問題後 commit,保持乾淨的 history

把 Claude Code 安裝好,選一個你目前在做的真實專案,寫一份 CLAUDE.md,然後給它一個中等難度的任務(不要太簡單,不要太複雜)。觀察它如何執行,感受一下這個工作模式。


本文根據「柚智夫妻 X 雷蒙三十」的 YouTube 影片整理,版權歸原作者所有。觀看原始影片 ↗