Claude Code 入門教程之從零到獨(dú)立完成項(xiàng)目的詳細(xì)過程
Claude Code 入門教程
1. 前言:你即將擁有的"超能力"
1.1 先講一個(gè)故事
想象一下,你剛進(jìn)入一家新公司,被分配了一個(gè)任務(wù):在兩周內(nèi)完成一個(gè) OCP 項(xiàng)目。
你打開項(xiàng)目文檔,看到一堆陌生的技術(shù)名詞:Java、Maven、Spring Boot、REST API、數(shù)據(jù)庫、Docker……你感到頭皮發(fā)麻,不知從何下手。
這時(shí)候,如果有人告訴你:
“你旁邊坐著一個(gè)經(jīng)驗(yàn)豐富的資深程序員,他精通所有編程語言,24 小時(shí)待命,永遠(yuǎn)不會不耐煩,而且你只需用中文跟他聊天,他就能幫你寫代碼、修 Bug、部署項(xiàng)目。”
你會不會覺得這是天方夜譚?
這,就是 Claude Code。
1.2 Claude Code 是什么(用一句話說清楚)
Claude Code 是一個(gè)運(yùn)行在終端里的 AI 編程助手。 你用自然語言(中文、英文都行)告訴它你想做什么,它就能幫你完成。
打個(gè)比方:
| 傳統(tǒng)編程 | 使用 Claude Code |
|---|---|
| 你像一個(gè)建筑工人,需要自己搬磚、砌墻、刷漆 | 你像一個(gè)建筑設(shè)計(jì)師,畫出藍(lán)圖,AI 幫你施工 |
| 你要記住每一行代碼的語法 | 你只需要清楚地描述你想要什么 |
| 遇到 Bug 要花幾小時(shí)搜索和調(diào)試 | 直接把錯(cuò)誤信息告訴 Claude Code,它幫你修 |
| 學(xué)習(xí)新技術(shù)要先看幾百頁文檔 | 直接讓 Claude Code 邊做邊教你 |
1.3 學(xué)完本教程你能做什么
學(xué)完本教程后,你將能夠:
- ? 獨(dú)立安裝和配置 Claude Code
- ? 用自然語言讓 AI 幫你寫代碼
- ? 讀懂、修改、管理一個(gè)完整的軟件項(xiàng)目
- ? 使用 Claude Code 的高級功能(MCP、Skills、Workflows)
- ? 獨(dú)立完成一個(gè) OCP 項(xiàng)目(從零到部署上線)
1.4 本教程的閱讀方式
如果你是純小白 ──→ 從頭到尾按順序閱讀,每個(gè)練習(xí)都跟著做 如果你有點(diǎn)基礎(chǔ) ──→ 可以跳過第 3 章,從第 5 章開始 如果你想快速上手 ──→ 直接看第 7 章和第 10 章
2. 什么是 Claude Code?—— 你的 AI 編程伙伴
2.1 用最通俗的話解釋
把 Claude Code 想象成一個(gè)住在你電腦終端里的智能助手:
┌─────────────────────────────────────────────────────────┐
│ 你(人類) │
│ "幫我寫一個(gè)計(jì)算器程序" │
│ "這段代碼為什么報(bào)錯(cuò)?" │
│ "把我的項(xiàng)目打包部署" │
└─────────────────────┬───────────────────────────────────┘
│
│ 你只需要用中文說話
▼
┌─────────────────────────────────────────────────────────┐
│ Claude Code(AI 助手) │
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 理解你的需求 │ │ 讀取項(xiàng)目文件 │ │ 執(zhí)行命令 │ │
│ │ │ │ │ │ │ │
│ │ "他想做計(jì)算器"│ │ "我來看看 │ │ "mvn compile"│ │
│ │ "需要加減乘除"│ │ 現(xiàn)有代碼" │ │ 編譯項(xiàng)目 │ │
│ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │
│ │ │ │ │
│ └─────────────────┼─────────────────┘ │
│ │ │
│ ▼ │
│ ┌──────────────────────┐ │
│ │ 生成代碼 / 修復(fù) Bug │ │
│ │ 運(yùn)行測試 / 部署項(xiàng)目 │ │
│ └──────────────────────┘ │
└─────────────────────────────────────────────────────────┘
2.2 Claude Code 與 ChatGPT 有什么不同?
很多人會問:“我已經(jīng)有 ChatGPT 了,為什么還要用 Claude Code?”
這是兩個(gè)完全不同的工具:
| 對比維度 | ChatGPT(網(wǎng)頁版) | Claude Code |
|---|---|---|
| 工作方式 | 在瀏覽器里一問一答 | 直接在終端里操作你的項(xiàng)目 |
| 讀取文件 | 需要手動復(fù)制粘貼 | 自動讀取你項(xiàng)目里的所有文件 |
| 修改代碼 | 復(fù)制粘貼,容易出錯(cuò) | 直接在文件里修改,精確無誤 |
| 執(zhí)行命令 | 不能 | 能執(zhí)行編譯、測試、部署等命令 |
| 項(xiàng)目理解 | 只看到你發(fā)給它的內(nèi)容 | 能理解整個(gè)項(xiàng)目的結(jié)構(gòu)和邏輯 |
| 適合場景 | 問問題、學(xué)知識 | 實(shí)際做項(xiàng)目、寫代碼 |
簡單來說:ChatGPT 是你的"老師",Claude Code 是你的"同事"。
2.3 Claude Code 的核心能力一覽
Claude Code 的能力全景圖 ═══════════════════════════════════════════════════════════ ?? 讀取與搜索 ?? 編寫與修改 ┌─────────────────┐ ┌─────────────────┐ │ ? 讀取任何文件 │ │ ? 創(chuàng)建新文件 │ │ ? 搜索代碼內(nèi)容 │ │ ? 精確修改代碼 │ │ ? 文件模式匹配 │ │ ? 批量替換內(nèi)容 │ │ ? 理解項(xiàng)目結(jié)構(gòu) │ │ ? 重構(gòu)整個(gè)項(xiàng)目 │ └─────────────────┘ └─────────────────┘ ? 執(zhí)行與運(yùn)行 ?? 思考與規(guī)劃 ┌─────────────────┐ ┌─────────────────┐ │ ? 運(yùn)行終端命令 │ │ ? 分析需求 │ │ ? 編譯項(xiàng)目 │ │ ? 設(shè)計(jì)方案 │ │ ? 運(yùn)行測試 │ │ ? 解釋代碼 │ │ ? 安裝依賴 │ │ ? 教學(xué)指導(dǎo) │ │ ? Git 操作 │ │ ? Debug 分析 │ └─────────────────┘ └─────────────────┘ ?? 擴(kuò)展能力(高級) ?? 自動化(高級) ┌─────────────────┐ ┌─────────────────┐ │ ? MCP 工具集成 │ │ ? 定時(shí)任務(wù) │ │ ? 自定義技能 │ │ ? 工作流編排 │ │ ? 多模型切換 │ │ ? 批量處理 │ │ ? 第三方服務(wù)連接 │ │ ? 自動部署 │ └─────────────────┘ └─────────────────┘
3. 安裝 Claude Code —— 3 步搞定
3.1 安裝前的準(zhǔn)備
在安裝之前,你需要確認(rèn)兩件事:
第一步:確認(rèn)你的操作系統(tǒng)
Claude Code 支持以下系統(tǒng):
- Windows:Windows 10 或 11
- macOS:macOS 12 或更新版本
- Linux:主流發(fā)行版(Ubuntu、Debian、CentOS 等)
第二步:確認(rèn)你有終端訪問權(quán)限
- Windows 用戶:需要安裝 Git Bash 或使用 PowerShell 終端
- Mac 用戶:自帶 終端(Terminal) 應(yīng)用
- Linux 用戶:自帶終端
新手提示:如果你用的是 Windows,強(qiáng)烈建議安裝 Git Bash。
下載地址:https://git-scm.com/downloads
Git Bash 讓你能在 Windows 上使用類 Linux 的命令行環(huán)境,大部分編程教程都基于這個(gè)環(huán)境。
3.2 安裝步驟(以 Windows 為例)
整個(gè)安裝過程就像安裝一個(gè)手機(jī) App 一樣簡單:
安裝流程圖
═══════════════════════════════════════════════════════════
開始
│
▼
┌──────────────────┐
│ 步驟1:安裝 Node.js │ ← 這是 Claude Code 的運(yùn)行環(huán)境
│ (版本 ≥ 18.0) │ 就像手機(jī)需要操作系統(tǒng)一樣
└──────┬───────────┘
│
▼
┌──────────────────┐
│ 步驟2:安裝 │ ← 在終端里輸入一行命令即可
│ Claude Code │
└──────┬───────────┘
│
▼
┌──────────────────┐
│ 步驟3:驗(yàn)證安裝 │ ← 確認(rèn)安裝成功
└──────┬───────────┘
│
▼
完成!開始使用步驟 1:安裝 Node.js
Node.js 是 Claude Code 的"運(yùn)行引擎"。你可以把它理解為:Node.js 是舞臺,Claude Code 是在舞臺上表演的演員。
# 1. 打開瀏覽器,訪問 https://nodejs.org # 2. 下載 LTS 版本(長期支持版,更穩(wěn)定) # 3. 雙擊安裝包,一路點(diǎn)擊"下一步"即可 # 4. 安裝完成后,打開終端(Win+R,輸入 cmd,回車) # 5. 輸入以下命令驗(yàn)證安裝是否成功: node --version # 如果安裝成功,你會看到類似這樣的輸出: # v20.11.0 (版本號可能不同,只要 ≥ 18.0 就沒問題) npm --version # 如果安裝成功,你會看到類似這樣的輸出: # 10.2.4 (npm 是 Node.js 自帶的包管理工具)
步驟 2:安裝 Claude Code
打開終端,輸入下面這一行命令:
# 使用 npm 全局安裝 Claude Code # -g 表示"全局安裝",意味著你可以在電腦的任何位置使用它 npm install -g @anthropic-ai/claude-code # 安裝過程大約需要 1-2 分鐘,你會看到很多行安裝日志在滾動 # 這是正常的,不用擔(dān)心里面的技術(shù)細(xì)節(jié)
如果安裝失敗:99% 的情況是因?yàn)榫W(wǎng)絡(luò)問題??梢試L試以下方法:
# 方法1:使用國內(nèi)鏡像源(推薦,速度更快) npm install -g @anthropic-ai/claude-code --registry=https://registry.npmmirror.com
步驟 3:驗(yàn)證安裝
# 在終端輸入以下命令: claude --version # 如果看到版本號輸出,說明安裝成功! # 類似:Claude Code v2.0.0
3.3 首次啟動與 API Key 配置
Claude Code 需要連接到 Anthropic 的 AI 服務(wù)才能工作。這需要一個(gè)"鑰匙"——API Key。
比喻:API Key 就像你的門禁卡。沒有它,你就進(jìn)不了大樓(用不了 AI 服務(wù))。
獲取 API Key 的流程 ═══════════════════════════════════════════════════════════ 訪問 console.anthropic.com │ ▼ 注冊 / 登錄賬號 │ ▼ 進(jìn)入 API Keys 頁面 │ ▼ 點(diǎn)擊 "Create Key" 創(chuàng)建新 Key │ ▼ ?? 復(fù)制并保存好 Key?。ㄖ伙@示一次) │ ▼ 在終端配置 Key
配置方法一:環(huán)境變量(推薦)
# 在 Git Bash 終端中輸入(Windows用戶推薦這種方式) # 把下面的 "sk-ant-xxxxx" 替換成你自己的真實(shí)的 API Key export ANTHROPIC_API_KEY="sk-ant-your-actual-api-key-here" # 注意:這種方式只在當(dāng)前終端窗口有效,關(guān)閉窗口后需要重新設(shè)置 # 如果你想讓這個(gè)配置永久生效,繼續(xù)往下看
配置方法二:永久配置(一勞永逸)
# Windows PowerShell 用戶
# 以管理員身份打開 PowerShell,執(zhí)行:
[Environment]::SetEnvironmentVariable("ANTHROPIC_API_KEY", "sk-ant-your-key-here", "User")
# Git Bash / Mac / Linux 用戶
# 把下面這行加到你的 ~/.bashrc 或 ~/.zshrc 文件末尾
echo 'export ANTHROPIC_API_KEY="sk-ant-your-key-here"' >> ~/.bashrc
# 讓配置立即生效
source ~/.bashrc配置方法三:使用 Claude Code 內(nèi)置的登錄命令
# 如果你已經(jīng)有 Anthropic 賬號,可以直接用這個(gè)命令登錄 claude login # 這會打開瀏覽器,讓你通過網(wǎng)頁完成認(rèn)證 # 認(rèn)證成功后,Claude Code 會自動保存你的憑證
3.4 驗(yàn)證一切就緒
# 在終端輸入: claude # 如果一切配置正確,你會進(jìn)入 Claude Code 的交互界面 # 你會看到一個(gè)類似這樣的提示符,表示可以開始對話了: # # ╭────────────────────────────────────────────╮ # │ ? Claude Code v2.0.0 │ # │ Ready to help you build amazing things! │ # ╰────────────────────────────────────────────╯ # >
到此為止,安裝就完成了!是不是比你想象中簡單很多?
4. 第一次對話 —— 跟 AI 說"你好"
4.1 啟動 Claude Code
有兩種使用 Claude Code 的方式:
方式一:交互模式(最常用)
# 進(jìn)入你的項(xiàng)目目錄(如果還沒有項(xiàng)目,先創(chuàng)建一個(gè)空目錄) mkdir my-first-project # 創(chuàng)建一個(gè)名為 my-first-project 的文件夾 cd my-first-project # 進(jìn)入這個(gè)文件夾 # 啟動 Claude Code claude
方式二:單次命令模式
# 不進(jìn)入交互界面,直接執(zhí)行一條指令 # -p 參數(shù)表示 "print",意思是直接打印結(jié)果 claude -p "寫一個(gè) Hello World 的 Python 程序"
4.2 你的第一句對話
進(jìn)入 Claude Code 后,你會看到一個(gè)提示符 >。輸入你想說的話,然后按回車:
> 你好!請用中文回復(fù)我。請解釋一下你是什么,你能幫我做什么?
Claude Code 會回復(fù)你一段文字,介紹自己的能力和限制。
交互流程圖:
┌─────────────────────────────────────────────────────────┐ │ 交互模式的工作流程 │ ├─────────────────────────────────────────────────────────┤ │ │ │ 你輸入問題 │ │ ┌──────────────────────┐ │ │ │ > 幫我寫一個(gè)計(jì)算器 │ │ │ └──────────┬───────────┘ │ │ │ │ │ ▼ │ │ ┌──────────────────────┐ │ │ │ Claude Code 分析你的 │ ← AI 理解你的意圖 │ │ │ 需求,讀取項(xiàng)目文件 │ │ │ └──────────┬───────────┘ │ │ │ │ │ ▼ │ │ ┌──────────────────────┐ │ │ │ Claude Code 生成代碼 │ ← AI 創(chuàng)建或修改文件 │ │ │ 或執(zhí)行相關(guān)操作 │ │ │ └──────────┬───────────┘ │ │ │ │ │ ▼ │ │ ┌──────────────────────┐ │ │ │ Claude Code 展示結(jié)果 │ ← AI 告訴你做了什么 │ │ │ 等待你的下一步指令 │ │ │ └──────────────────────┘ │ │ │ │ │ ▼ │ │ 繼續(xù)對話…… │ │ │ └─────────────────────────────────────────────────────────┘
4.3 基本的對話技巧
跟 Claude Code 交流不需要任何特殊技巧——就用你平時(shí)跟人聊天的方式。但有幾個(gè)小竅門可以讓溝通更高效:
? 好的提問方式:
> 幫我用 Python 寫一個(gè)計(jì)算器程序,要求支持加減乘除四種運(yùn)算。 用戶輸入兩個(gè)數(shù)字和運(yùn)算符,程序輸出計(jì)算結(jié)果。 代碼要包含詳細(xì)的中文注釋。 > 這段代碼運(yùn)行時(shí)報(bào)錯(cuò)了,錯(cuò)誤信息是: "NameError: name 'result' is not defined" 幫我分析一下原因并修復(fù)。 > 我的項(xiàng)目里有 5 個(gè) Java 文件,幫我找一下哪個(gè)文件里定義了 UserService 類。
? 不太好的提問方式:
> 寫代碼 ← 太模糊了,AI 不知道你想要什么 > 修復(fù)錯(cuò)誤 ← 沒說是什么錯(cuò)誤,AI 無法定位問題 > 幫我做個(gè)東西 ← 沒有具體描述,AI 會困惑
核心原則:越具體,AI 的幫助越精準(zhǔn)。
4.4 一些常用命令
在 Claude Code 的交互界面中,有一些特殊的"斜杠命令"(以 / 開頭),它們是快捷操作:
# ─── 基礎(chǔ)命令 ─── /help # 顯示幫助信息,列出所有可用命令 # 用法:直接輸入 /help 即可 # 作用:查看 Claude Code 支持的所有功能和快捷命令 /clear # 清空當(dāng)前對話歷史,開始新的話題 # 用法:當(dāng)你想切換話題或之前的對話太長時(shí)使用 # 注意:這不會刪除任何文件,只是清空對話記錄 /compact # 壓縮對話歷史,釋放上下文空間 # 用法:當(dāng)對話很長,AI 響應(yīng)變慢時(shí)使用 # 作用:保留關(guān)鍵信息,刪除冗余內(nèi)容,讓 AI 重新"聚焦" # ─── 會話管理 ─── /status # 查看當(dāng)前會話狀態(tài) # 顯示:當(dāng)前模型、對話長度、文件變更等信息 /context # 查看當(dāng)前上下文包含的內(nèi)容 # 顯示:AI 當(dāng)前"看到"了哪些信息 # ─── 文件與項(xiàng)目 ─── /init # 初始化項(xiàng)目,創(chuàng)建 CLAUDE.md 項(xiàng)目說明文件 # 用法:在項(xiàng)目根目錄執(zhí)行 /init # 作用:讓 Claude Code 更好地理解你的項(xiàng)目結(jié)構(gòu)和規(guī)則 /add-dir # 添加一個(gè)目錄到工作區(qū) # 用法:/add-dir src/ (將 src 目錄加入關(guān)注范圍) # ─── 配置與管理 ─── /config # 查看和修改 Claude Code 的設(shè)置 # 用法:/config 進(jìn)入設(shè)置頁面 /model # 切換使用的 AI 模型 # 用法:/model opus (切換到 Opus 模型,能力最強(qiáng)) # /model sonnet (切換到 Sonnet 模型,速度更快) # ─── 費(fèi)用與用量 ─── /cost # 查看當(dāng)前會話的費(fèi)用消耗 # 用法:/cost 顯示本次對話花了多少錢 /usage # 查看 Token 使用量 # Token 是 AI 處理文本的計(jì)量單位,類似電話的"分鐘"
5. 核心概念:理解 Claude Code 的"大腦"
在深入使用之前,讓我們先了解幾個(gè)核心概念。這些概念就像開車前要認(rèn)識的儀表盤——不需要成為工程師,但要知道每個(gè)指示燈是什么意思。
5.1 上下文(Context)—— AI 的"短期記憶"
概念解釋:
Claude Code 的"上下文"就像 AI 的短期記憶。每次對話中,AI 能"記住"的內(nèi)容是有限的。這個(gè)限制用 Token 來衡量。
什么是 Token?
把 Token 理解為 AI 閱讀文本時(shí)的"最小單位":
- 一個(gè)中文字 ≈ 1-2 個(gè) Token
- 一個(gè)英文單詞 ≈ 1-3 個(gè) Token
- 一張圖片 ≈ 幾百到幾千個(gè) Token
就像一個(gè)杯子能裝的水是有限的,AI 一次能處理的內(nèi)容也是有限的。
上下文窗口示意圖 ═══════════════════════════════════════════════════════════ ┌─────────────────────────────────────────────────────┐ │ 上下文窗口(Context Window) │ │ Claude Opus 最大支持 100 萬 Token │ │ │ │ ┌──────────────────────┐ │ │ │ 系統(tǒng)提示詞 │ ← 定義 AI 的角色和行為 │ │ │ (System Prompt) │ 如"你是一個(gè)編程助手" │ │ ├──────────────────────┤ │ │ │ │ │ │ │ 對話歷史 │ ← 你和 AI 你來我往的記錄 │ │ │ (Conversation) │ 每一輪對話都在這里 │ │ │ │ │ │ │ ? 你:幫我寫代碼 │ │ │ │ ? AI:好的,這是代碼 │ │ │ │ ? 你:有個(gè)錯(cuò)誤…… │ │ │ │ ? AI:我來修復(fù)…… │ │ │ ├──────────────────────┤ │ │ │ 當(dāng)前請求 │ ← 你最新輸入的問題 │ │ │ (Current Request) │ │ │ └──────────────────────┘ │ └─────────────────────────────────────────────────────┘ 當(dāng)上下文滿了 → AI 可能會"忘記"早期的對話內(nèi)容 解決方法 → /compact 命令壓縮對話 或 /clear 清空重新開始
如何管理上下文:
# 查看當(dāng)前使用了多少上下文 /context # 如果對話太長,壓縮上下文(保留關(guān)鍵信息,刪除冗余) /compact # 完全開始新話題 /clear
5.2 Token —— AI 的"計(jì)費(fèi)單位"
概念解釋:
Token 就像電話的"分鐘數(shù)"——你用得越多,費(fèi)用越高。但完全在你的可控范圍內(nèi)。
Token 的直觀理解 ═══════════════════════════════════════════════════════════ 中文:"你好世界" ≈ 4 個(gè) Token 英文:"Hello World" ≈ 2 個(gè) Token 一句普通的中文問句 ≈ 20-50 個(gè) Token 一個(gè) 100 行的 Python 文件 ≈ 800-1500 個(gè) Token 一個(gè)中等規(guī)模的項(xiàng)目(100個(gè)文件) ≈ 50萬-200萬 Token 費(fèi)用參考(以 Claude Opus 為例): ┌─────────────────────────────────────────────┐ │ 輸入(你發(fā)給 AI 的內(nèi)容):$5 / 100萬 Token │ │ 輸出(AI 回復(fù)的內(nèi)容): $25 / 100萬 Token │ │ │ │ 換句話說: │ │ ? 問一個(gè)問題 ≈ 幾分錢 │ │ ? 寫一個(gè)完整功能 ≈ 幾毛錢 │ │ ? 完成一個(gè)項(xiàng)目 ≈ 幾塊錢到幾十塊錢 │ └─────────────────────────────────────────────┘
如何查看費(fèi)用:
# 在 Claude Code 中隨時(shí)查看當(dāng)前會話的費(fèi)用 /cost # 輸出示例: # Total cost: $0.42 # Input tokens: 45,230 # Output tokens: 2,156
5.3 工具(Tools)—— AI 的"手和腳"
概念解釋:
如果 AI 的智能是它的大腦,那工具就是它的"手和腳"。沒有工具,AI 只能"說"不能"做"。Claude Code 內(nèi)置了一系列工具,讓 AI 能夠?qū)嶋H操作你的項(xiàng)目。
Claude Code 的內(nèi)置工具一覽 ═══════════════════════════════════════════════════════════ ┌─────────────────────────────────────────────────────────┐ │ 工具清單 │ ├───────────────┬─────────────────────────────────────────┤ │ 工具名稱 │ 作用(用人話解釋) │ ├───────────────┼─────────────────────────────────────────┤ │ Read │ "讀文件"——就像你打開文件查看內(nèi)容 │ │ │ 可以讀代碼、讀文檔、讀圖片、讀 PDF │ ├───────────────┼─────────────────────────────────────────┤ │ Write │ "寫文件"——創(chuàng)建新文件或覆蓋已有文件 │ │ │ 就像你在編輯器里新建文件并寫入內(nèi)容 │ ├───────────────┼─────────────────────────────────────────┤ │ Edit │ "改文件"——精確修改文件中的某段內(nèi)容 │ │ │ 不是整個(gè)重寫,而是精準(zhǔn)替換 │ ├───────────────┼─────────────────────────────────────────┤ │ Bash │ "執(zhí)行命令"——在終端里運(yùn)行指令 │ │ │ 可以編譯代碼、安裝依賴、運(yùn)行測試 │ ├───────────────┼─────────────────────────────────────────┤ │ Glob │ "找文件"——按文件名模式搜索 │ │ │ 比如找所有 .java 文件或所有 test*.js │ ├───────────────┼─────────────────────────────────────────┤ │ Grep │ "搜內(nèi)容"——在文件內(nèi)容中搜索關(guān)鍵詞 │ │ │ 比如找所有包含"password"的代碼行 │ ├───────────────┼─────────────────────────────────────────┤ │ WebFetch │ "抓網(wǎng)頁"——獲取網(wǎng)頁內(nèi)容 │ │ │ 可以讀取在線文檔、API 說明等 │ ├───────────────┼─────────────────────────────────────────┤ │ WebSearch │ "搜網(wǎng)頁"——搜索互聯(lián)網(wǎng) │ │ │ 查找最新信息、技術(shù)方案等 │ ├───────────────┼─────────────────────────────────────────┤ │ Task │ "多任務(wù)"——同時(shí)處理多個(gè)獨(dú)立工作 │ │ │ 比如同時(shí)搜索多個(gè)目錄或處理多個(gè)文件 │ └───────────────┴─────────────────────────────────────────┘
工具是如何工作的?
你不需要手動調(diào)用這些工具——你只需要用自然語言說出你的需求,Claude Code 會自動選擇合適的工具。
你說:"幫我把項(xiàng)目里所有的 TODO 注釋找出來"
│
▼
Claude Code 內(nèi)部自動執(zhí)行:
┌──────────────────────────────────────┐
│ 1. 分析需求:"找 TODO 注釋" │
│ 2. 選擇工具:用 Grep 工具搜索 │
│ 3. 執(zhí)行:grep "TODO" 遍歷所有文件 │
│ 4. 整理結(jié)果:把找到的 TODO 列給你看 │
│ 5. 回復(fù):"找到了 12 個(gè) TODO……" │
└──────────────────────────────────────┘5.4 權(quán)限控制 —— 安全的"門禁"
Claude Code 在執(zhí)行某些操作前會征求你的同意,這是為了保護(hù)你的項(xiàng)目安全。
權(quán)限級別說明 ═══════════════════════════════════════════════════════════ ┌─────────────────────────────────────────────────────────┐ │ 操作類型 │ 是否需要你確認(rèn) │ 示例 │ ├──────────────────────┼─────────────────┼────────────────┤ │ 讀文件 │ 不需要(自動) │ "看看這個(gè)文件" │ │ 搜索內(nèi)容 │ 不需要(自動) │ "搜一下 TODO" │ │ 寫新文件 │ 需要確認(rèn) │ "創(chuàng)建一個(gè)文件" │ │ 修改已有文件 │ 需要確認(rèn) │ "修改這行代碼" │ │ 執(zhí)行命令 │ 需要確認(rèn) │ "運(yùn)行 npm test"│ │ 訪問外部網(wǎng)站 │ 需要確認(rèn) │ "查看這個(gè)網(wǎng)頁" │ │ 刪除文件 │ 需要確認(rèn) │ "刪除這個(gè)文件" │ └──────────────────────┴─────────────────┴────────────────┘ 你可以選擇: ? 允許(Allow) —— 僅這次 ? 總是允許(Always Allow)—— 同類型操作不再詢問 ? 拒絕(Deny) —— 不允許執(zhí)行
6. 基礎(chǔ)操作:讀、寫、改、搜
現(xiàn)在你已經(jīng)了解了基本概念,讓我們動手實(shí)操吧!
6.1 讀取文件 —— “幫我看看這個(gè)”
這是最基礎(chǔ)的操作。你可以讓 Claude Code 讀取各種類型的文件。
實(shí)用場景一:查看代碼文件
場景:你剛接手一個(gè)項(xiàng)目,想了解某個(gè)文件做了什么 你:幫我看看 src/main/java/com/example/UserController.java 這個(gè)文件, 解釋一下每個(gè)方法是做什么的,用中文說明。 Claude Code 會: 1. 自動使用 Read 工具讀取文件 2. 分析代碼結(jié)構(gòu) 3. 用通俗的中文解釋每個(gè)方法的作用 4. 可能還會指出潛在的問題或改進(jìn)建議
實(shí)用場景二:分析圖片內(nèi)容
場景:產(chǎn)品經(jīng)理給了你一張 UI 設(shè)計(jì)圖,讓你實(shí)現(xiàn) 你:看看這張?jiān)O(shè)計(jì)圖 design.png,告訴我這是一個(gè)什么樣的頁面布局。 Claude Code 會: 1. 讀取圖片文件 2. 分析圖片中的 UI 元素 3. 描述布局結(jié)構(gòu) 4. 甚至可以幫你生成對應(yīng)的 HTML/CSS 代碼
6.2 搜索代碼 —— “幫我找到那個(gè)”
當(dāng)項(xiàng)目代碼量很大時(shí),手動翻找文件就像大海撈針。Claude Code 能幫你在幾秒鐘內(nèi)找到你需要的內(nèi)容。
實(shí)用場景一:搜索文件內(nèi)容
場景:你想找到所有調(diào)用了 getUserById 方法的地方 你:幫我在整個(gè)項(xiàng)目中搜索所有調(diào)用 getUserById 的地方, 列出文件名和行號。 Claude Code 會: 1. 自動使用 Grep 工具搜索 2. 返回所有匹配的行及其位置 3. 你可以點(diǎn)擊行號直接跳轉(zhuǎn)
實(shí)用場景二:按文件名查找
場景:你記得有個(gè)文件名叫 UserService 但忘了在哪個(gè)目錄 你:幫我找到所有文件名包含 UserService 的 Java 文件。 Claude Code 會: 1. 使用 Glob 工具按文件名模式匹配 2. 列出所有匹配的文件路徑
6.3 修改代碼 —— “幫我改一下”
這是 Claude Code 的殺手級功能——精確修改代碼,不多不少。
代碼修改示例:
場景:你想給 UserService 類添加一個(gè)新方法 你:在 src/main/java/com/example/UserService.java 中 添加一個(gè) findByEmail 方法,參數(shù)是 String email, 返回 Optional<User>。 Claude Code 會: 1. 讀取 UserService.java 的內(nèi)容 2. 分析類的結(jié)構(gòu) 3. 在合適的位置插入新方法 4. 確保代碼格式和項(xiàng)目風(fēng)格一致 5. 展示修改后的結(jié)果讓你確認(rèn)
修改前后對比示意:
// ========== 修改前 ==========
public class UserService {
public Optional<User> findById(Long id) {
// 根據(jù) ID 查找用戶
return userRepository.findById(id);
}
}
// ========== 修改后 ==========
public class UserService {
public Optional<User> findById(Long id) {
// 根據(jù) ID 查找用戶
return userRepository.findById(id);
}
// 【新增方法】根據(jù)郵箱地址查找用戶
// @param email 用戶的郵箱地址
// @return 包含用戶的 Optional 對象,如果找不到則為空
public Optional<User> findByEmail(String email) {
// 調(diào)用 Repository 層的 findByEmail 方法查詢數(shù)據(jù)庫
return userRepository.findByEmail(email);
}
}6.4 執(zhí)行命令 —— “幫我運(yùn)行一下”
你不需要記住復(fù)雜的命令行指令,直接告訴 Claude Code 你想做什么就行。
# 場景:你想編譯一個(gè) Java 項(xiàng)目 # 傳統(tǒng)方式(你需要記住命令): mvn clean compile -DskipTests # Claude Code 方式(說人話就行): > 幫我編譯這個(gè) Java 項(xiàng)目,跳過測試。 # Claude Code 會自動執(zhí)行: # mvn clean compile -DskipTests # 然后把編譯結(jié)果翻譯成你能看懂的中文告訴你
執(zhí)行命令的完整流程:
你說:"幫我看看這個(gè) Spring Boot 項(xiàng)目能不能正常啟動"
│
▼
┌─────────────────────────────────────────────────────────┐
│ Claude Code 內(nèi)部處理流程 │
│ │
│ 1. 分析項(xiàng)目類型 │
│ → 發(fā)現(xiàn) pom.xml → 判定為 Maven 管理的 Spring Boot 項(xiàng)目 │
│ │
│ 2. 確定啟動命令 │
│ → mvn spring-boot:run │
│ │
│ 3. 請求你的確認(rèn) │
│ → "我將執(zhí)行 mvn spring-boot:run,是否允許?" │
│ │
│ 4. 執(zhí)行命令并捕獲輸出 │
│ → 啟動日志會顯示在終端 │
│ │
│ 5. 分析結(jié)果 │
│ → 如果啟動成功:告訴你端口號和訪問地址 │
│ → 如果啟動失?。簬湍惴治鲥e(cuò)誤原因并修復(fù) │
└─────────────────────────────────────────────────────────┘7. 實(shí)戰(zhàn)演練一:用 Claude Code 寫一個(gè)網(wǎng)頁
理論學(xué)完了,讓我們動手做一個(gè)實(shí)際的東西!我們將從零開始,用 Claude Code 創(chuàng)建一個(gè)漂亮的個(gè)人主頁。
7.1 項(xiàng)目準(zhǔn)備
# 1. 創(chuàng)建項(xiàng)目文件夾 mkdir my-homepage cd my-homepage # 2. 啟動 Claude Code claude
7.2 跟 Claude Code 對話開發(fā)
現(xiàn)在,把下面這些"對話"逐條輸入給 Claude Code,看看會發(fā)生什么:
第一步:提出需求
> 幫我創(chuàng)建一個(gè)個(gè)人主頁,要求:
1. 只用一個(gè) index.html 文件(把 CSS 和 JS 都寫在里面)
2. 設(shè)計(jì)要簡潔大方,使用現(xiàn)代的設(shè)計(jì)風(fēng)格
3. 包含以下內(nèi)容:
- 頂部導(dǎo)航欄:首頁、關(guān)于我、技能、聯(lián)系方式
- 主頁橫幅區(qū):我的名字(張三)、一句話介紹
- 關(guān)于我區(qū)域:一段個(gè)人簡介
- 技能展示區(qū):用卡片展示我會的技能
- 聯(lián)系方式區(qū):郵箱、GitHub、微信
- 底部版權(quán)信息
4. 顏色方案用藍(lán)色系
5. 代碼中加上詳細(xì)的中文注釋,我是初學(xué)者
第二步:預(yù)覽效果
# Claude Code 寫完后,幫我在瀏覽器里打開看看 > 幫我在瀏覽器里打開這個(gè) index.html 文件
第三步:修改優(yōu)化
> 我覺得背景色太深了,幫我改成淺藍(lán)色 > 導(dǎo)航欄的字體再大一些 > 把技能卡片改成 3 列布局,現(xiàn)在太寬了
7.3 完整的代碼示例(含詳細(xì)注釋)
下面就是 Claude Code 幫你生成的代碼。注意看里面的注釋——每一行關(guān)鍵代碼都有解釋:
<!DOCTYPE html>
<!-- 這行告訴瀏覽器:這是一個(gè) HTML5 文檔 -->
<html lang="zh-CN">
<!-- lang="zh-CN" 表示頁面主要語言是簡體中文 -->
<head>
<!-- head 標(biāo)簽包含頁面的"元信息"——用戶看不到,但瀏覽器需要 -->
<meta charset="UTF-8">
<!-- 設(shè)置字符編碼為 UTF-8,這樣中文才能正常顯示 -->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- 讓頁面在手機(jī)上也能正常顯示(響應(yīng)式設(shè)計(jì)的基礎(chǔ)) -->
<title>張三 - 個(gè)人主頁</title>
<!-- 瀏覽器標(biāo)簽頁上顯示的標(biāo)題 -->
<style>
/* ========== 全局樣式 ========== */
/* * 是通配符,選中所有元素 */
* {
margin: 0;
/* 清除默認(rèn)的外邊距 */
padding: 0;
/* 清除默認(rèn)的內(nèi)邊距 */
box-sizing: border-box;
/* 讓寬高計(jì)算方式更直觀 */
}
/* body 是頁面主體,所有可見內(nèi)容都在里面 */
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
/* 設(shè)置字體,從前往后依次嘗試 */
line-height: 1.6;
/* 行高 1.6 倍,讓文字不擁擠 */
color: #333;
/* 文字顏色:深灰色(比純黑柔和) */
background-color: #f0f4f8;
/* 背景色:淺藍(lán)灰色 */
}
/* ========== 導(dǎo)航欄樣式 ========== */
/* nav 是 HTML5 的語義化標(biāo)簽,表示導(dǎo)航區(qū)域 */
nav {
background-color: #1a56db;
/* 導(dǎo)航欄背景:深藍(lán)色 */
padding: 16px 0;
/* 上下內(nèi)邊距 16px,左右 0 */
position: sticky;
/* 粘性定位:滾動時(shí)導(dǎo)航欄固定在頂部 */
top: 0;
/* 距離頂部 0px */
z-index: 100;
/* 層級最高,確保不被其他元素遮擋 */
}
/* 導(dǎo)航欄內(nèi)部的容器,用于控制內(nèi)容寬度 */
nav .container {
max-width: 1000px;
/* 最大寬度 1000px */
margin: 0 auto;
/* 上下 0,左右自動(居中) */
display: flex;
/* 使用彈性布局 */
justify-content: space-between;
/* 子元素兩端對齊 */
align-items: center;
/* 子元素垂直居中 */
}
/* 網(wǎng)站 Logo/標(biāo)題 */
nav .logo {
color: white;
/* 文字白色 */
font-size: 22px;
/* 字體大小 */
font-weight: bold;
/* 加粗 */
}
/* 導(dǎo)航鏈接列表 */
nav ul {
list-style: none;
/* 去掉列表的小圓點(diǎn) */
display: flex;
/* 讓列表項(xiàng)橫向排列 */
gap: 24px;
/* 每項(xiàng)之間的間距 */
}
/* 導(dǎo)航鏈接樣式 */
nav ul li a {
color: rgba(255, 255, 255, 0.85);
/* 半透明白色 */
text-decoration: none;
/* 去掉下劃線 */
font-size: 15px;
transition: color 0.3s;
/* 顏色變化有 0.3 秒過渡動畫 */
}
/* 鼠標(biāo)懸停在導(dǎo)航鏈接上時(shí)的效果 */
nav ul li a:hover {
color: white;
/* 變?yōu)榧儼咨?*/
}
/* ========== 橫幅區(qū)樣式 ========== */
.hero {
background: linear-gradient(135deg, #1a56db 0%, #4f8cf7 100%);
/* 漸變背景:從深藍(lán)到淺藍(lán),135度角 */
color: white;
padding: 80px 0;
/* 上下 80px 的內(nèi)邊距,讓橫幅更高 */
text-align: center;
/* 文字居中 */
}
.hero h1 {
font-size: 40px;
/* 主標(biāo)題大號字體 */
margin-bottom: 12px;
}
.hero p {
font-size: 18px;
opacity: 0.9;
/* 略微透明 */
}
/* ========== 通用容器和區(qū)塊樣式 ========== */
.container {
max-width: 1000px;
margin: 0 auto;
padding: 0 20px;
/* 左右保留 20px 安全距離 */
}
section {
padding: 60px 0;
/* 每個(gè)區(qū)塊上下 60px 間距 */
}
section h2 {
text-align: center;
font-size: 28px;
margin-bottom: 36px;
color: #1a56db;
}
/* ========== 關(guān)于我區(qū)域 ========== */
.about p {
font-size: 16px;
text-align: center;
max-width: 680px;
margin: 0 auto;
/* 段落居中,最大寬度 680px,閱讀更舒適 */
}
/* ========== 技能卡片區(qū)域 ========== */
.skills-grid {
display: grid;
/* 使用網(wǎng)格布局 */
grid-template-columns: repeat(3, 1fr);
/* 3 列,每列等寬 */
gap: 20px;
/* 卡片之間的間距 */
}
/* 單個(gè)技能卡片 */
.skill-card {
background: white;
/* 白色背景 */
padding: 28px;
border-radius: 10px;
/* 圓角 */
text-align: center;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
/* 投影陰影:水平0 垂直2px 模糊10px 黑色8%透明度 */
transition: transform 0.3s;
/* 懸停動畫 */
}
.skill-card:hover {
transform: translateY(-4px);
/* 鼠標(biāo)懸停時(shí)向上移動 4px,有"浮起來"的感覺 */
}
.skill-card .icon {
font-size: 36px;
/* 圖標(biāo)(emoji)的尺寸 */
margin-bottom: 12px;
}
.skill-card h3 {
margin-bottom: 8px;
color: #1a56db;
}
/* ========== 聯(lián)系方式區(qū)域 ========== */
.contact-info {
text-align: center;
font-size: 16px;
}
.contact-info p {
margin-bottom: 8px;
}
/* ========== 頁腳樣式 ========== */
footer {
background-color: #1a2938;
/* 深色背景 */
color: #9ca3af;
/* 灰色文字 */
text-align: center;
padding: 20px 0;
font-size: 14px;
}
</style>
</head>
<body>
<!-- ========== 導(dǎo)航欄 ========== -->
<nav>
<div class="container">
<!-- 左側(cè) Logo -->
<span class="logo">張三</span>
<!-- 右側(cè)導(dǎo)航鏈接 -->
<ul>
<!-- href="#" 表示點(diǎn)擊后跳轉(zhuǎn)到當(dāng)前頁面的指定位置 -->
<li><a href="#home">首頁</a></li>
<li><a href="#about">關(guān)于我</a></li>
<li><a href="#skills">技能</a></li>
<li><a href="#contact">聯(lián)系方式</a></li>
</ul>
</div>
</nav>
<!-- ========== 主頁橫幅 ========== -->
<section class="hero" id="home">
<h1>張三</h1>
<p>熱愛技術(shù)的全棧開發(fā)者 | 終身學(xué)習(xí)者 | 開源愛好者</p>
</section>
<!-- ========== 關(guān)于我 ========== -->
<section class="about" id="about">
<div class="container">
<h2>關(guān)于我</h2>
<p>
你好!我是張三,一名擁有 3 年經(jīng)驗(yàn)的全棧開發(fā)者。
我熱愛用代碼創(chuàng)造有價(jià)值的軟件產(chǎn)品,喜歡學(xué)習(xí)新技術(shù)。
工作之余,我活躍在 GitHub 開源社區(qū),參與過多個(gè)知名項(xiàng)目的貢獻(xiàn)。
我相信技術(shù)的力量可以讓世界變得更好。
</p>
</div>
</section>
<!-- ========== 技能展示 ========== -->
<section id="skills">
<div class="container">
<h2>我的技能</h2>
<div class="skills-grid">
<!-- 技能卡片 1 -->
<div class="skill-card">
<div class="icon">?</div>
<h3>Java</h3>
<p>精通 Java 后端開發(fā),Spring Boot 框架</p>
</div>
<!-- 技能卡片 2 -->
<div class="skill-card">
<div class="icon">??</div>
<h3>Python</h3>
<p>熟練使用 Python 進(jìn)行數(shù)據(jù)處理和 Web 開發(fā)</p>
</div>
<!-- 技能卡片 3 -->
<div class="skill-card">
<div class="icon">??</div>
<h3>前端開發(fā)</h3>
<p>掌握 HTML、CSS、JavaScript 和 Vue.js</p>
</div>
</div>
</div>
</section>
<!-- ========== 聯(lián)系方式 ========== -->
<section id="contact">
<div class="container">
<h2>聯(lián)系我</h2>
<div class="contact-info">
<p>?? 郵箱:zhangsan@example.com</p>
<p>?? GitHub:github.com/zhangsan</p>
<p>?? 微信:zhangsan_dev</p>
</div>
</div>
</section>
<!-- ========== 頁腳 ========== -->
<footer>
<div class="container">
<p>© 2026 張三 | 保留所有權(quán)利</p>
<!-- © 是版權(quán)符號 ? -->
</div>
</footer>
</body>
</html>7.4 從這個(gè)練習(xí)中學(xué)到了什么
通過這個(gè)小項(xiàng)目,你應(yīng)該已經(jīng)體驗(yàn)到了:
- 你只需描述"要什么",不需要寫具體代碼 —— Claude Code 幫你實(shí)現(xiàn)
- 你可以隨時(shí)修改 —— 跟 AI 說"這里改一下"就行
- 所有的代碼都有注釋 —— AI 默認(rèn)會幫你寫好注釋
- 修改是迭代的 —— 先做一個(gè)版本,然后逐步優(yōu)化
8. 實(shí)戰(zhàn)演練二:管理一個(gè)完整項(xiàng)目
上一章我們寫了一個(gè)簡單的網(wǎng)頁。這一章,讓我們來管理一個(gè)真正的多文件項(xiàng)目。
8.1 項(xiàng)目初始化 —— CLAUDE.md 文件
CLAUDE.md 是一個(gè)非常重要的文件。它就像是給 Claude Code 的"項(xiàng)目說明書"。
比喻:如果 Claude Code 是一個(gè)新加入團(tuán)隊(duì)的員工,CLAUDE.md 就是你給他的《新員工手冊》——告訴他項(xiàng)目是做什么的、用什么技術(shù)棧、有什么規(guī)范。
如何創(chuàng)建 CLAUDE.md:
# 在項(xiàng)目根目錄下執(zhí)行 claude > /init
Claude Code 會自動掃描你的項(xiàng)目,生成一份 CLAUDE.md 文件。你也可以手動編寫它。
一個(gè) OCP 項(xiàng)目的 CLAUDE.md 示例:
# OCP 電商平臺項(xiàng)目 ## 項(xiàng)目簡介 這是一個(gè)基于 Spring Boot 的在線商城系統(tǒng),提供商品瀏覽、購物車、下單等功能。 ## 技術(shù)棧 - 后端框架:Spring Boot 2.7.x - 構(gòu)建工具:Maven - 數(shù)據(jù)庫:MySQL 8.0 + MyBatis-Plus - 緩存:Redis - Java 版本:JDK 11 ## 項(xiàng)目結(jié)構(gòu)
src/
├── main/
│ ├── java/com/example/ocp/
│ │ ├── controller/ # 控制器層 - 處理 HTTP 請求
│ │ ├── service/ # 服務(wù)層 - 業(yè)務(wù)邏輯
│ │ ├── mapper/ # 數(shù)據(jù)訪問層 - 操作數(shù)據(jù)庫
│ │ ├── entity/ # 實(shí)體類 - 數(shù)據(jù)庫表對應(yīng)
│ │ └── config/ # 配置類
│ └── resources/
│ ├── application.yml # 主配置文件
│ └── mapper/ # MyBatis XML 映射文件
└── test/ # 測試代碼
## 編碼規(guī)范 - 類名使用大駝峰命名法,如 UserController - 方法名和變量名使用小駝峰命名法,如 findUserById - 所有 public 方法必須有 Javadoc 注釋 - Controller 層只做參數(shù)校驗(yàn)和轉(zhuǎn)發(fā),不寫業(yè)務(wù)邏輯 - 使用 Lombok 簡化 getter/setter ## 運(yùn)行方式 ?```bash # 編譯 mvn clean compile # 運(yùn)行測試 mvn test # 啟動項(xiàng)目 mvn spring-boot:run # 啟動后訪問 http://localhost:8080
### 8.2 項(xiàng)目中 Claude Code 的日常工作流 有了 CLAUDE.md 后,Claude Code 就"認(rèn)識"你的項(xiàng)目了。下面是日常工作中最常用的幾種交互模式:
Claude Code 項(xiàng)目工作流程圖
═══════════════════════════════════════════════════════════
收到新需求
│
▼
┌──────────────────┐
│ Claude Code 讀取 │ ← 先理解需求,再看看現(xiàn)有代碼
│ CLAUDE.md + │
│ 相關(guān)代碼文件 │
└──────┬───────────┘
│
▼
┌──────────────────┐
│ Claude Code 制定 │ ← 告訴你它打算怎么做
│ 實(shí)現(xiàn)方案 │
└──────┬───────────┘
│
▼
┌──────────────────┐
│ 你確認(rèn)方案? │ ← 你可以要求修改方案
└──┬───────────┬───┘
│ │
同意 不同意 → 返回修改方案
│
▼
┌──────────────────┐
│ Claude Code 編寫 │ ← 創(chuàng)建/修改代碼文件
│ 代碼 │
└──────┬───────────┘
│
▼
┌──────────────────┐
│ Claude Code 運(yùn)行 │ ← 編譯、測試、驗(yàn)證
│ 測試 │
└──────┬───────────┘
│
▼
測試通過?
│ │
是 否 → Claude Code 分析錯(cuò)誤 → 自動修復(fù) → 重新測試
│
▼
┌──────────────────┐
│ 完成! │
│ Claude Code 總結(jié) │
│ 做了什么修改 │
└──────────────────┘
### 8.3 實(shí)際工作場景演示 讓我們模擬幾個(gè)真實(shí)的開發(fā)場景: **場景一:添加新功能**
你:根據(jù) CLAUDE.md 中的項(xiàng)目規(guī)范,請幫我實(shí)現(xiàn)一個(gè)"用戶注冊"功能。
要求:
1. 在 UserController 中添加 POST /api/users/register 接口 2. 在 UserService 中添加 register 方法 3. 注冊時(shí)校驗(yàn)郵箱格式和密碼長度(至少6位) 4. 密碼需要用 BCrypt 加密后存儲 5. 返回格式統(tǒng)一使用 Result 類包裝
Claude Code 會:
- 讀取 CLAUDE.md 了解項(xiàng)目結(jié)構(gòu)和規(guī)范
- 讀取現(xiàn)有的 UserController 和 UserService 代碼
- 讀取 Result 類的定義
- 在正確的位置添加代碼
- 確保代碼風(fēng)格和現(xiàn)有代碼一致
- 幫你添加必要的依賴(如 spring-security-crypto 用于 BCrypt)
**場景二:修復(fù) Bug**
你:啟動項(xiàng)目時(shí)出現(xiàn)以下錯(cuò)誤,幫我分析和修復(fù):
“Error creating bean with name ‘userMapper’:
Failed to introspect bean class
[com.example.ocp.mapper.UserMapper]”
Claude Code 會:
- 讀取 UserMapper 接口的代碼
- 讀取相關(guān)的 XML 映射文件
- 檢查 application.yml 中的 MyBatis 配置
- 分析錯(cuò)誤原因
- 提出修復(fù)方案并執(zhí)行
**場景三:代碼重構(gòu)**
你:UserService 里的代碼太長了,有 500 多行。
幫我把里面的業(yè)務(wù)邏輯拆分成多個(gè)小的 Service 類,
但要確保不改變現(xiàn)有的功能。
Claude Code 會:
- 分析 UserService 中的所有方法
- 按功能分組(如用戶管理、權(quán)限管理、資料管理)
- 創(chuàng)建新的 Service 類
- 把方法遷移到對應(yīng)的新類中
- 更新所有引用了舊方法的地方
- 運(yùn)行測試確保重構(gòu)沒有破壞功能
### 8.4 Git 版本管理 Claude Code 可以幫助你管理代碼版本(使用 Git),即使你完全不懂 Git 命令:
你:幫我把今天的修改提交到 Git,提交信息寫"新增用戶注冊功能"
Claude Code 會:
- git add . (添加所有修改的文件到暫存區(qū))
- git commit -m “…” (創(chuàng)建一次提交,并附上說明信息)
你:幫我把代碼推送到遠(yuǎn)程倉庫
Claude Code 會:
- git push (上傳到 GitHub / GitLab 等遠(yuǎn)程倉庫)
--- ## 9. 高級功能:讓 Claude Code 更強(qiáng)大 當(dāng)你掌握了基礎(chǔ)功能后,這些高級功能可以幫助你進(jìn)一步提升效率。 ### 9.1 MCP(模型上下文協(xié)議)—— 連接外部世界 **概念解釋:** MCP 的全稱是 Model Context Protocol(模型上下文協(xié)議)。用人話來說——**它是讓 Claude Code 能連接各種外部工具和服務(wù)的"萬能插頭"**。 > **比喻**:你的手機(jī)只有一個(gè)充電口,但是通過不同的轉(zhuǎn)接頭,你可以連 U 盤、顯示器、鍵盤…… MCP 就是 AI 世界的那個(gè)"萬能轉(zhuǎn)接頭"。
沒有 MCP 的 Claude Code:
┌──────────┐ ┌──────────┐
│ Claude │ ───→ │ 你的本地 │ ← 只能操作本地的文件
│ Code │ │ 項(xiàng)目文件 │
└──────────┘ └──────────┘
有了 MCP 的 Claude Code:
┌──────────┐ ┌──────────┐
│ Claude │ ───→ │ 本地文件 │
│ Code │ └──────────┘
│ │ ┌──────────┐
│ │ ───→ │ GitHub │ ← 可以操作 GitHub 倉庫
│ │ └──────────┘
│ │ ┌──────────┐
│ │ ───→ │ 數(shù)據(jù)庫 │ ← 可以查詢數(shù)據(jù)庫
│ │ └──────────┘
│ │ ┌──────────┐
│ │ ───→ │ Slack │ ← 可以發(fā)送消息
└──────────┘ └──────────┘
**MCP 的常見應(yīng)用:** | MCP 服務(wù) | 能讓 Claude Code 做什么 | |---------|------------------------| | GitHub MCP | 創(chuàng)建 Issue、提交 PR、查看代碼變更 | | 數(shù)據(jù)庫 MCP | 直接查詢數(shù)據(jù)庫、執(zhí)行 SQL | | Jira MCP | 查看/創(chuàng)建/更新任務(wù) | | Slack MCP | 發(fā)送消息到頻道 | | 文件系統(tǒng) MCP | 訪問遠(yuǎn)程服務(wù)器上的文件 | ### 9.2 Skills(技能)—— 給 AI 安裝"專業(yè)插件" **概念解釋:** Skills 就像給 Claude Code 安裝的各種"專業(yè) App"。比如說,默認(rèn)的 Claude Code 什么都能做,但如果你要處理 Excel 文件,裝了 "xlsx" 這個(gè) Skill 后,它會變得更專業(yè)。
Skills 的作用
═══════════════════════════════════════════════════════════
默認(rèn) Claude Code 安裝了專用 Skills 的 Claude Code
┌─────────────────┐ ┌─────────────────────────────┐
│ 編程 ★★★★☆ │ │ 編程 ★★★★☆ │
│ 寫文檔 ★★★☆☆ │ │ 寫文檔 ★★★★★ │
│ Excel ★★☆☆☆ │ │ Excel 處理 +xlsx ★★★★★ │
│ PPT ★★☆☆☆ │ │ PPT 制作 +pptx ★★★★★ │
│ PDF ★★☆☆☆ │ │ PDF 處理 +pdf ★★★★★ │
│ 前端設(shè)計(jì) ★★★☆☆ │ │ 前端設(shè)計(jì) +skill ★★★★★ │
└─────────────────┘ └─────────────────────────────┘
**如何在 Claude Code 中使用 Skills:**
Skills 的配置存儲在 `.claude/settings.json` 文件中。你可以在這個(gè)文件中聲明要啟用的 Skills:
?```json
{
"skills": [
"xlsx", // Excel 處理技能
"docx", // Word 處理技能
"pptx", // PowerPoint 處理技能
"pdf" // PDF 處理技能
]
}這些內(nèi)置 Skills 開箱即用,不需要額外安裝。當(dāng)你的任務(wù)涉及相關(guān)文件類型時(shí),Claude Code 會自動激活對應(yīng)的技能。
9.3 Hooks(鉤子)—— 自動化工作流
概念解釋:
Hooks(鉤子)讓你可以在 Claude Code 執(zhí)行某些操作之前或之后自動觸發(fā)自定義行為。比如:
- “每次 AI 修改代碼后,自動運(yùn)行測試”
- “每次對話開始時(shí),自動加載項(xiàng)目信息”
- “每次 AI 準(zhǔn)備刪除文件時(shí),彈出一個(gè)更醒目的警告”
比喻:Hooks 就像你給 AI 助理設(shè)置的"自動提醒"——“出門前別忘了關(guān)窗”、“睡覺前記得鎖門”。
一個(gè)實(shí)用的 Hook 示例:
// 在 .claude/settings.json 中配置
{
"hooks": {
// PostToolUse:在 AI 使用某個(gè)工具后觸發(fā)
"PostToolUse": [
{
// 匹配器:當(dāng) AI 修改了 Java 文件時(shí)觸發(fā)
"matcher": "Edit",
// 鉤子:自動格式化代碼
"hooks": [
{
"type": "command",
// 執(zhí)行這個(gè)命令來格式化剛修改的 Java 代碼
"command": "mvn spotless:apply"
}
]
}
]
}
}常用 Hook 場景:
場景對照表 ═══════════════════════════════════════════════════════════ 觸發(fā)時(shí)機(jī) │ 可以做什么 ──────────────────┼───────────────────────────────────── 對話開始時(shí) │ 加載項(xiàng)目信息、檢查環(huán)境 工具使用前 │ 額外安全檢查、記錄日志 工具使用后 │ 自動格式化、運(yùn)行測試、記錄變更 AI 回復(fù)后 │ 發(fā)送通知、觸發(fā) CI/CD 對話結(jié)束時(shí) │ 清理臨時(shí)文件、生成工作報(bào)告 文件被修改前 │ 自動備份原文件
9.4 多模型切換 —— 選擇適合的"大腦"
Claude Code 支持多種 AI 模型,它們在能力、速度、價(jià)格上有不同的側(cè)重:
模型選擇指南 ═══════════════════════════════════════════════════════════ ┌─────────────────────────────────────────────────────────┐ │ 模型 │ 適合場景 │ 特點(diǎn) │ ├────────────────┼────────────────────┼──────────────────┤ │ Opus 4.8 │ 最復(fù)雜的任務(wù) │ 最聰明、最貴 │ │ (旗艦?zāi)P停? │ 大型項(xiàng)目重構(gòu) │ 適合"深度思考" │ │ │ 復(fù)雜架構(gòu)設(shè)計(jì) │ │ ├────────────────┼────────────────────┼──────────────────┤ │ Sonnet 4.6 │ 日常開發(fā) │ 智能與速度的平衡 │ │ (推薦日常用) │ 寫代碼、修 Bug │ 性價(jià)比最高 │ │ │ 中小型項(xiàng)目 │ │ ├────────────────┼────────────────────┼──────────────────┤ │ Haiku 4.5 │ 簡單任務(wù) │ 最快、最便宜 │ │ (輕量模型) │ 代碼分類、格式化 │ 適合高頻簡單操作 │ │ │ 簡單問答 │ │ └────────────────┴────────────────────┴──────────────────┘ 切換命令: /model opus → 切換到 Opus(處理復(fù)雜任務(wù)時(shí)) /model sonnet → 切換到 Sonnet(日常開發(fā),默認(rèn)推薦) /model haiku → 切換到 Haiku(執(zhí)行簡單重復(fù)任務(wù)時(shí))
9.5 Workflows(工作流)—— 多 AI 并行工作
概念解釋:
當(dāng)你有一個(gè)大任務(wù)時(shí),可以把它拆分成多個(gè)小任務(wù),讓多個(gè) AI 同時(shí)工作——就像把一個(gè)大項(xiàng)目分配給多個(gè)員工同時(shí)做。
單個(gè) AI 處理大項(xiàng)目: ┌────────────────────────────────────────────────────┐ │ AI 一個(gè)人干活 │ │ 任務(wù)1 → 任務(wù)2 → 任務(wù)3 → 任務(wù)4 → 任務(wù)5 │ │ 耗時(shí):所有任務(wù)的時(shí)間之和 │ └────────────────────────────────────────────────────┘ Workflow 多 AI 并行: ┌────────────────────────────────────────────────────┐ │ AI-1 → 任務(wù)1 │ │ AI-2 → 任務(wù)2 ← 所有 AI 同時(shí)工作 │ │ AI-3 → 任務(wù)3 │ │ AI-4 → 任務(wù)4 │ │ AI-5 → 任務(wù)5 │ │ 耗時(shí):最慢的一個(gè)任務(wù)的時(shí)間 │ └────────────────────────────────────────────────────┘
什么時(shí)候用 Workflow:
- 需要審查大量代碼時(shí)(每個(gè) AI 審查一部分)
- 需要搜索多個(gè)不同方向時(shí)
- 需要同時(shí)處理多個(gè)獨(dú)立文件時(shí)
- 需要對同一個(gè)問題進(jìn)行多角度分析時(shí)
注意:Workflow 是一個(gè)高級功能,涉及復(fù)雜的編排邏輯。作為入門用戶,你不需要手動創(chuàng)建 Workflow。當(dāng)你的任務(wù)確實(shí)需要并行處理時(shí),Claude Code 會自動建議或執(zhí)行并行策略。
10. OCP 項(xiàng)目實(shí)戰(zhàn)指南
這一章是本教程的"終極挑戰(zhàn)"——用 Claude Code 從零開始完成一個(gè) OCP(Online Commerce Platform,在線商務(wù)平臺)項(xiàng)目。
10.1 OCP 項(xiàng)目是什么?
OCP 是一個(gè)典型的企業(yè)級 Java Web 項(xiàng)目。它包含了現(xiàn)代 Web 應(yīng)用的大部分要素:
OCP 項(xiàng)目架構(gòu)概覽
═══════════════════════════════════════════════════════════
┌─────────────────────────────────────────────────────────┐
│ 瀏覽器(前端) │
│ HTML + CSS + JavaScript │
└────────────────────────┬────────────────────────────────┘
│ HTTP 請求
▼
┌─────────────────────────────────────────────────────────┐
│ Spring Boot 后端 │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │Controller│→│ Service │→│ Mapper │ │
│ │ 接收請求 │ │ 處理業(yè)務(wù) │ │ 訪問數(shù)據(jù)庫│ │
│ └──────────┘ └──────────┘ └────┬─────┘ │
└────────────────────────────────────┼────────────────────┘
│
┌───────────┴───────────┐
▼ ▼
┌─────────────┐ ┌─────────────┐
│ MySQL │ │ Redis │
│ 數(shù)據(jù)庫 │ │ 緩存 │
│ 存數(shù)據(jù) │ │ 加速訪問 │
└─────────────┘ └─────────────┘10.2 項(xiàng)目準(zhǔn)備:讓 Claude Code 理解 OCP
第一步:創(chuàng)建項(xiàng)目骨架
# 在 Claude Code 中輸入以下內(nèi)容:
> 幫我創(chuàng)建一個(gè)標(biāo)準(zhǔn)的 Spring Boot 項(xiàng)目骨架,使用 Maven 管理。
項(xiàng)目名為 ocp-platform,包名為 com.example.ocp。
要求:
1. Java 版本使用 JDK 11
2. Spring Boot 版本使用 2.7.x
3. 包含以下依賴:
- Spring Web(用于開發(fā) REST API)
- MyBatis-Plus(簡化數(shù)據(jù)庫操作)
- MySQL Connector(連接 MySQL 數(shù)據(jù)庫)
- Lombok(簡化 Java 代碼)
- Spring Boot Validation(參數(shù)校驗(yàn))
4. 創(chuàng)建標(biāo)準(zhǔn)的項(xiàng)目目錄結(jié)構(gòu)
5. 創(chuàng)建基礎(chǔ)的配置文件 application.yml
6. 創(chuàng)建基礎(chǔ)的工具類(如統(tǒng)一的響應(yīng)格式 Result 類)Claude Code 會幫你創(chuàng)建如下目錄結(jié)構(gòu):
ocp-platform/ ├── pom.xml # Maven 項(xiàng)目配置文件 ├── CLAUDE.md # Claude Code 項(xiàng)目說明書 ├── src/ │ ├── main/ │ │ ├── java/com/example/ocp/ │ │ │ ├── OcpApplication.java # Spring Boot 啟動類 │ │ │ ├── controller/ # 控制器包 │ │ │ ├── service/ # 服務(wù)層包 │ │ │ │ └── impl/ # 服務(wù)實(shí)現(xiàn)類 │ │ │ ├── mapper/ # 數(shù)據(jù)訪問層 │ │ │ ├── entity/ # 數(shù)據(jù)庫實(shí)體類 │ │ │ ├── dto/ # 數(shù)據(jù)傳輸對象 │ │ │ ├── common/ # 公共類 │ │ │ │ └── Result.java # 統(tǒng)一響應(yīng)格式 │ │ │ └── config/ # 配置類 │ │ └── resources/ │ │ ├── application.yml # 主配置文件 │ │ └── mapper/ # MyBatis XML 映射 │ └── test/ │ └── java/com/example/ocp/ # 測試代碼
第二步:創(chuàng)建 CLAUDE.md
> /init
Claude Code 自動掃描項(xiàng)目后生成的 CLAUDE.md 會包含所有項(xiàng)目信息。你可以在此基礎(chǔ)上補(bǔ)充一些額外的規(guī)范:
## OCP 項(xiàng)目開發(fā)規(guī)范補(bǔ)充
### API 設(shè)計(jì)規(guī)范
- 所有 API 路徑以 /api 開頭
- 使用 RESTful 風(fēng)格:
- GET /api/users —— 查詢用戶列表
- GET /api/users/{id} —— 查詢單個(gè)用戶
- POST /api/users —— 創(chuàng)建用戶
- PUT /api/users/{id} —— 更新用戶
- DELETE /api/users/{id} —— 刪除用戶
### 數(shù)據(jù)庫規(guī)范
- 表名使用小寫字母和下劃線,如 user_order
- 字段名使用小寫字母和下劃線,如 create_time
- 每張表必須有 id(主鍵)、create_time、update_time 字段
### 測試規(guī)范
- Service 層必須寫單元測試
- Controller 層寫集成測試
- 測試覆蓋率目標(biāo):Service 層 ≥ 80%10.3 分模塊實(shí)現(xiàn) OCP 項(xiàng)目
OCP 項(xiàng)目可以拆分為以下幾個(gè)模塊,逐一實(shí)現(xiàn)。每個(gè)模塊你只需要用自然語言描述需求:
模塊一:用戶管理
> 幫我實(shí)現(xiàn)用戶管理模塊,包括以下功能: 1. 用戶注冊(賬號 + 密碼 + 郵箱) 2. 用戶登錄(返回 JWT Token) 3. 根據(jù) ID 查詢用戶信息 4. 更新用戶信息(昵稱、頭像等) 5. 密碼加密存儲(使用 BCrypt) 6. 注冊時(shí)校驗(yàn)郵箱格式和密碼強(qiáng)度 請?jiān)?Controller、Service、Mapper 層分別實(shí)現(xiàn)。 所有方法都必須有詳細(xì)的中文注釋。 為 Service 層編寫單元測試。
模塊二:商品管理
> 幫我實(shí)現(xiàn)商品管理模塊: 1. 商品實(shí)體包含:商品名、描述、價(jià)格、庫存、分類、圖片URL 2. 支持商品列表的分頁查詢(可按分類篩選、按價(jià)格排序) 3. 支持商品詳情查詢 4. 支持商品搜索(根據(jù)名稱模糊搜索) 5. 管理員可以新增、修改、下架商品 同樣實(shí)現(xiàn) Controller、Service、Mapper 三層。 包含詳細(xì)注釋和單元測試。
模塊三:購物車
> 幫我實(shí)現(xiàn)購物車模塊: 1. 用戶可以把商品加入購物車(指定數(shù)量) 2. 用戶可以修改購物車中商品的數(shù)量 3. 用戶可以從購物車中刪除商品 4. 用戶可以查看自己的購物車列表 5. 購物車數(shù)據(jù)存儲在 Redis 中 6. 同一個(gè)商品重復(fù)添加時(shí),數(shù)量累加 需要配置 Redis 連接,實(shí)現(xiàn) Redis 操作的工具類。
模塊四:訂單管理
> 幫我實(shí)現(xiàn)訂單模塊: 1. 用戶可以從購物車生成訂單 2. 訂單包含:訂單號、用戶ID、商品列表、總金額、狀態(tài) 3. 訂單狀態(tài)流轉(zhuǎn):待支付 → 已支付 → 已發(fā)貨 → 已完成 → 已取消 4. 用戶可以查看自己的訂單列表 5. 用戶可以取消待支付的訂單 6. 生成訂單時(shí)自動扣減庫存(使用數(shù)據(jù)庫事務(wù)確保數(shù)據(jù)一致性) 7. 使用 @Transactional 注解管理事務(wù)
模塊五:統(tǒng)一異常處理
> 幫我實(shí)現(xiàn)全局異常處理:
1. 創(chuàng)建自定義業(yè)務(wù)異常類 BusinessException
2. 使用 @ControllerAdvice 實(shí)現(xiàn)全局異常攔截
3. 不同的異常類型返回對應(yīng)的 HTTP 狀態(tài)碼和錯(cuò)誤信息
4. 常見異常的處理:
- 參數(shù)校驗(yàn)失敗 → 400
- 資源不存在 → 404
- 業(yè)務(wù)邏輯錯(cuò)誤 → 422
- 服務(wù)器內(nèi)部錯(cuò)誤 → 500
10.4 調(diào)試與測試
開發(fā)過程中不可避免會遇到 Bug。下面是處理 Bug 的標(biāo)準(zhǔn)流程:
Bug 處理流程圖
═══════════════════════════════════════════════════════════
發(fā)現(xiàn) Bug(啟動報(bào)錯(cuò) / 功能不正常 / 測試失敗)
│
▼
┌──────────────────┐
│ 把錯(cuò)誤信息完整地 │ ← 復(fù)制粘貼,不要遺漏任何信息
│ 復(fù)制給 Claude Code │
└──────┬───────────┘
│
▼
┌──────────────────┐
│ Claude Code 分析 │
│ 錯(cuò)誤原因 │
└──────┬───────────┘
│
▼
┌──────────────────┐
│ Claude Code 提出 │
│ 修復(fù)方案 │
└──────┬───────────┘
│
▼
┌──────────────────┐
│ 你確認(rèn) → 修復(fù) │
└──────┬───────────┘
│
▼
┌──────────────────┐
│ Claude Code 運(yùn)行 │
│ 測試驗(yàn)證修復(fù) │
└──────┬───────────┘
│
▼
測試通過?
│ │
是 否 → 返回分析步驟,重新調(diào)試
│
▼
Bug 已修復(fù)!10.5 部署項(xiàng)目
當(dāng)你完成了所有模塊的開發(fā)和測試后,最后一步是部署:
> 幫我部署這個(gè) OCP 項(xiàng)目。我的服務(wù)器環(huán)境是: - 操作系統(tǒng):Linux (Ubuntu 20.04) - 已安裝 Docker 和 Docker Compose - 數(shù)據(jù)庫:MySQL 8.0 - 需要配置 Nginx 反向代理 請幫我: 1. 創(chuàng)建 Dockerfile(把項(xiàng)目打包成 Docker 鏡像) 2. 創(chuàng)建 docker-compose.yml(編排 MySQL + Redis + 應(yīng)用) 3. 創(chuàng)建 Nginx 配置文件 4. 生成部署腳本 deploy.sh 5. 寫出詳細(xì)的部署步驟文檔 DEPLOY.md
Claude Code 會生成所有需要的文件,包括:
# Dockerfile —— 把 Java 應(yīng)用打包成容器鏡像 # 使用官方的 OpenJDK 11 鏡像作為基礎(chǔ) FROM openjdk:11-jre-slim # 設(shè)置容器內(nèi)的工作目錄 WORKDIR /app # 把編譯好的 jar 包復(fù)制到容器中 COPY target/ocp-platform-1.0.0.jar app.jar # 暴露 8080 端口(Spring Boot 默認(rèn)端口) EXPOSE 8080 # 容器啟動時(shí)執(zhí)行的命令 ENTRYPOINT ["java", "-jar", "app.jar"]
10.6 OCP 項(xiàng)目完整對話流程總結(jié)
OCP 項(xiàng)目從零到部署的完整對話流程
═══════════════════════════════════════════════════════════
第 1 步:創(chuàng)建項(xiàng)目骨架
"幫我創(chuàng)建一個(gè)標(biāo)準(zhǔn)的 Spring Boot 項(xiàng)目骨架……"
│
▼
第 2 步:初始化 CLAUDE.md
/init(讓 Claude Code 理解你的項(xiàng)目)
│
▼
第 3 步:逐個(gè)實(shí)現(xiàn)功能模塊
┌─────────────────────────────────────┐
│ 用戶模塊 → 商品模塊 → 購物車模塊 │
│ → 訂單模塊 → 異常處理 → 日志配置 │
└─────────────────────────────────────┘
每完成一個(gè)模塊,運(yùn)行測試驗(yàn)證
│
▼
第 4 步:集成測試
"幫我寫一個(gè)端到端的集成測試……"
│
▼
第 5 步:部署上線
"幫我創(chuàng)建 Dockerfile 和部署腳本……"
│
▼
? 項(xiàng)目完成!11. 常見問題與排錯(cuò)指南
11.1 安裝問題
| 問題 | 原因 | 解決方法 |
|---|---|---|
npm: command not found | 沒有安裝 Node.js | 去 nodejs.org 下載安裝 |
claude: command not found | Claude Code 沒有安裝成功 | 重新執(zhí)行 npm install -g @anthropic-ai/claude-code |
| 安裝過程報(bào)網(wǎng)絡(luò)錯(cuò)誤 | 網(wǎng)絡(luò)問題 | 使用國內(nèi)鏡像:npm install --registry=https://registry.npmmirror.com |
permission denied | 權(quán)限不足 | Mac/Linux 加 sudo:sudo npm install -g ... |
11.2 使用問題
| 問題 | 原因 | 解決方法 |
|---|---|---|
| AI 回復(fù)說沒有權(quán)限讀文件 | 文件在工作區(qū)之外 | 用 /add-dir 添加目錄 |
| AI 好像"忘記"之前說過的內(nèi)容 | 上下文太長了 | 使用 /compact 壓縮上下文 |
| 代碼修改后跟預(yù)期不一樣 | 需求描述不夠具體 | 重新描述要求,給出更具體的示例 |
| 執(zhí)行命令時(shí)報(bào)錯(cuò) | 環(huán)境配置問題 | 把完整錯(cuò)誤信息發(fā)給 Claude Code |
11.3 Token 和費(fèi)用問題
| 問題 | 解決方法 |
|---|---|
| 費(fèi)用太高 | 切換到 Sonnet 模型:/model sonnet |
| Token 消耗太快 | 使用 /compact 定期壓縮上下文 |
| 想控制預(yù)算 | 每次大任務(wù)前用 /cost 查看當(dāng)前花費(fèi) |
11.4 新手最容易犯的 5 個(gè)錯(cuò)誤
? 需求描述太模糊
- 錯(cuò)誤:“幫我做一個(gè)網(wǎng)站”
- 正確:“幫我做一個(gè)電商網(wǎng)站的商品列表頁,要展示商品圖片、名稱、價(jià)格,支持按分類篩選”
? 不提供錯(cuò)誤信息
- 錯(cuò)誤:“程序跑不起來了”
- 正確:“運(yùn)行時(shí)報(bào)這個(gè)錯(cuò)誤:[粘貼完整錯(cuò)誤信息],我的項(xiàng)目是 Spring Boot 2.7,Java 11”
? 一次提太多需求
- 錯(cuò)誤:一口氣說出 10 個(gè)功能需求
- 正確:一次說 1-2 個(gè)功能,完成后再提下一個(gè)
? 不給上下文
- 錯(cuò)誤:在一個(gè)新項(xiàng)目中直接說"修改 UserService"
- 正確:先說"幫我看看這個(gè)項(xiàng)目",等 AI 理解了再提具體修改
? 不讓 AI 運(yùn)行測試
- 錯(cuò)誤:改完代碼就認(rèn)為完成了
- 正確:每次修改后說"改完后幫我運(yùn)行一下相關(guān)測試"
12. 總結(jié)與下一步
12.1 你學(xué)到了什么
恭喜你完成了 Claude Code 入門教程!讓我們回顧一下你學(xué)到了什么:
學(xué)習(xí)成果檢查清單 ═══════════════════════════════════════════════════════════ □ 理解 Claude Code 是什么,能做什么 □ 獨(dú)立完成 Claude Code 的安裝和配置 □ 掌握基礎(chǔ)的對話和指令技巧 □ 理解上下文(Context)、Token、工具(Tools)等核心概念 □ 能夠用自然語言讓 AI 讀取、搜索、修改代碼文件 □ 理解 CLAUDE.md 文件的作用 □ 能夠管理一個(gè)完整的多文件項(xiàng)目 □ 了解 MCP、Skills、Hooks 等高級功能 □ 能夠從零開始完成一個(gè) OCP 項(xiàng)目的開發(fā) □ 知道遇到問題該如何排查
12.2 Claude Code 的工作哲學(xué)
在使用 Claude Code 的過程中,請記住這 5 條"黃金法則":
Claude Code 五條黃金法則
════════════════════════════════════════════════════════════
1?? 你是導(dǎo)演,AI 是演員
你負(fù)責(zé)告訴 AI "要演什么",AI 負(fù)責(zé)具體的"表演"
你不需要知道怎么寫代碼,但需要清楚地描述你想要的結(jié)果
2?? 越具體,結(jié)果越好
"幫我寫個(gè)用戶登錄功能" 不如
"幫我寫一個(gè)用戶登錄接口,接收用戶名和密碼,
驗(yàn)證成功后返回 JWT Token,失敗返回錯(cuò)誤信息"
3?? 迭代比一次完美更重要
先讓 AI 做出一個(gè)能用的版本,然后再逐步優(yōu)化
不要試圖第一次就把所有細(xì)節(jié)都說清楚
4?? 善用 AI 的眼睛
讓 AI 幫你讀代碼、搜代碼、分析代碼
你只需要做決策
5?? 保持"人在回路中"
AI 是強(qiáng)大的工具,但最終的決定權(quán)在你手里
審查 AI 的修改,理解 AI 的邏輯,做出自己的判斷12.3 推薦的學(xué)習(xí)路徑
進(jìn)階學(xué)習(xí)路徑
═══════════════════════════════════════════════════════════
初學(xué)者 ──→ 本教程 ──→ 用 Claude Code 做一個(gè)小項(xiàng)目
│
▼
閱讀 Claude Code 官方文檔
了解更高級的配置選項(xiàng)
│
▼
學(xué)習(xí) MCP 協(xié)議
連接 GitHub、數(shù)據(jù)庫等外部服務(wù)
│
▼
編寫自定義 Skills
讓 Claude Code 更適配你的工作流
│
▼
配置 Hooks
實(shí)現(xiàn)自動化工作流
│
▼
掌握 Workflow
實(shí)現(xiàn)多 AI 并行處理復(fù)雜任務(wù)12.4 最后的寄語
技術(shù)世界變化很快,但有一條不變:工具是為人類服務(wù)的。
Claude Code 不是為了取代你,而是為了放大你的能力。它就像一個(gè)不知疲倦的伙伴,幫你在編程的海洋中航行。
記?。?/p>
- 不要害怕犯錯(cuò) —— 有 Claude Code 在身邊,錯(cuò)誤都是學(xué)習(xí)機(jī)會
- 保持好奇心 —— 多問"為什么",讓 AI 給你解釋
- 享受創(chuàng)造的樂趣 —— 編程的本質(zhì)是用代碼創(chuàng)造價(jià)值
“你不是在學(xué)編程,你是在學(xué)習(xí)如何指揮一個(gè)超級智能的編程團(tuán)隊(duì)。”
—— 一位 Claude Code 用戶的感悟
到此這篇關(guān)于Claude Codde 入門教程—— 從零到獨(dú)立完成項(xiàng)目的文章就介紹到這了,更多相關(guān)Claude Codde 入門內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!
相關(guān)文章

Opencode Go接入Claude Code的實(shí)現(xiàn)步驟
本文主要介紹了Opencode Go接入Claude Code的實(shí)現(xiàn)步驟,文中通過圖文示例介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)2026-06-18
2026年Claude Code 編輯器集成教程:VS Code和JetBrains完整配置
CLI 是 Claude Code 的核心入口,但很多開發(fā)者日常還是待在 IDE 里,VS Code、Cursor、JetBrains 系列其實(shí)都可以接入 Claude Code,讓 AI 直接結(jié)合當(dāng)前文件、選中代碼和項(xiàng)目2026-06-17
Claude Code 是 Anthropic 公司推出的一款命令行 AI 編程代理工具,它能讓開發(fā)者直接在終端中與 AI 對話,本指南將系統(tǒng)性地介紹 Claude Code 的核心概念、安裝流程、操作技2026-06-16
Claude Code中使用Spec Kit的實(shí)現(xiàn)步驟
在 Claude Code 中使用 Spec Kit(由 GitHub 官方推出的規(guī)格驅(qū)動開發(fā)工具包),可以實(shí)現(xiàn)“先寫規(guī)范、再生成代碼”的高質(zhì)量 AI 編程流程,下面就來詳細(xì)的介紹一下2026-06-16
詳解Claude Code Router 接入過程的爬坑記錄
本文詳細(xì)記錄了安裝Claude-code-router(CCR)過程中遇到的五個(gè)關(guān)鍵問題及其解決方案,包括配置文件錯(cuò)誤、API路徑不完整、代理設(shè)置不當(dāng)、settings.json沖突以及Warp終端上下2026-06-16
Claude Code 是 Anthropic 推出的命令行 AI 編程助手,通過插件(Plugin)系統(tǒng),你可以為 Claude Code 擴(kuò)展各種專業(yè)技能——本文從代碼審查到前端設(shè)計(jì),從安全審計(jì)到數(shù)學(xué)競2026-06-14
這篇文章主要為大家介紹了Claude自動運(yùn)行方法大全,詳述AutoMode、Shift+Tab及白名單策略,推薦AutoMode為最安全便捷方案,適用于日常開發(fā)與團(tuán)隊(duì)環(huán)境安全高效運(yùn)行,需要的朋友2026-06-12
我每天使用Claude Code大約一個(gè)月,注意到我的~/.claude目錄占了1.3GB,沒有自動清理,會議數(shù)據(jù)不斷堆積,下面小編就和大家分享一下如何使用腳本清理Claude Code緩存信息吧2026-06-12
這篇文章主要為大家詳細(xì)介紹了Claude Code CLI的完整命令參考手冊,涵蓋了交互式斜杠命令,鍵盤快捷鍵,配置文件系統(tǒng),Hooks 系統(tǒng),常用工作流等內(nèi)容,有需要的小伙伴可以2026-06-12
小白也能照著做:Claude Code 在 macOS 上的安裝與 API配置全流程分析
這篇文章給大家介紹小白也能照著做:Claude Code 在 macOS 上的安裝與 API配置全流程分析,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2026-06-12











