最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Claude Code 入門教程之從零到獨(dú)立完成項(xiàng)目的詳細(xì)過程

  發(fā)布時(shí)間:2026-06-18 15:43:22   作者:fa_lsyk   我要評論
Claude Code 是 Anthropic 推出的終端原生 AI 編程代理,能直接讀取文件、執(zhí)行命令和規(guī)劃任務(wù),而非普通聊天機(jī)器人,本文介紹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>&copy; 2026 張三 | 保留所有權(quán)利</p>
            <!-- &copy; 是版權(quán)符號 ? -->
        </div>
    </footer>
</body>
</html>

7.4 從這個(gè)練習(xí)中學(xué)到了什么

通過這個(gè)小項(xiàng)目,你應(yīng)該已經(jīng)體驗(yàn)到了:

  1. 你只需描述"要什么",不需要寫具體代碼 —— Claude Code 幫你實(shí)現(xiàn)
  2. 你可以隨時(shí)修改 —— 跟 AI 說"這里改一下"就行
  3. 所有的代碼都有注釋 —— AI 默認(rèn)會幫你寫好注釋
  4. 修改是迭代的 —— 先做一個(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 會:

  1. 讀取 CLAUDE.md 了解項(xiàng)目結(jié)構(gòu)和規(guī)范
  2. 讀取現(xiàn)有的 UserController 和 UserService 代碼
  3. 讀取 Result 類的定義
  4. 在正確的位置添加代碼
  5. 確保代碼風(fēng)格和現(xiàn)有代碼一致
  6. 幫你添加必要的依賴(如 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 會:

  1. 讀取 UserMapper 接口的代碼
  2. 讀取相關(guān)的 XML 映射文件
  3. 檢查 application.yml 中的 MyBatis 配置
  4. 分析錯(cuò)誤原因
  5. 提出修復(fù)方案并執(zhí)行
**場景三:代碼重構(gòu)**

你:UserService 里的代碼太長了,有 500 多行。
幫我把里面的業(yè)務(wù)邏輯拆分成多個(gè)小的 Service 類,
但要確保不改變現(xiàn)有的功能。

Claude Code 會:

  1. 分析 UserService 中的所有方法
  2. 按功能分組(如用戶管理、權(quán)限管理、資料管理)
  3. 創(chuàng)建新的 Service 類
  4. 把方法遷移到對應(yīng)的新類中
  5. 更新所有引用了舊方法的地方
  6. 運(yùn)行測試確保重構(gòu)沒有破壞功能
### 8.4 Git 版本管理
Claude Code 可以幫助你管理代碼版本(使用 Git),即使你完全不懂 Git 命令:

你:幫我把今天的修改提交到 Git,提交信息寫"新增用戶注冊功能"

Claude Code 會:

  1. git add . (添加所有修改的文件到暫存區(qū))
  2. git commit -m “…” (創(chuàng)建一次提交,并附上說明信息)

你:幫我把代碼推送到遠(yuǎn)程倉庫

Claude Code 會:

  1. 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 foundClaude 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ò)誤

  1. ? 需求描述太模糊

    • 錯(cuò)誤:“幫我做一個(gè)網(wǎng)站”
    • 正確:“幫我做一個(gè)電商網(wǎng)站的商品列表頁,要展示商品圖片、名稱、價(jià)格,支持按分類篩選”
  2. ? 不提供錯(cuò)誤信息

    • 錯(cuò)誤:“程序跑不起來了”
    • 正確:“運(yùn)行時(shí)報(bào)這個(gè)錯(cuò)誤:[粘貼完整錯(cuò)誤信息],我的項(xiàng)目是 Spring Boot 2.7,Java 11”
  3. ? 一次提太多需求

    • 錯(cuò)誤:一口氣說出 10 個(gè)功能需求
    • 正確:一次說 1-2 個(gè)功能,完成后再提下一個(gè)
  4. ? 不給上下文

    • 錯(cuò)誤:在一個(gè)新項(xiàng)目中直接說"修改 UserService"
    • 正確:先說"幫我看看這個(gè)項(xiàng)目",等 AI 理解了再提具體修改
  5. ? 不讓 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從安裝到精通的完全指南

    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插件安裝與技能使用的完全指南

    Claude Code 是 Anthropic 推出的命令行 AI 編程助手,通過插件(Plugin)系統(tǒng),你可以為 Claude Code 擴(kuò)展各種專業(yè)技能——本文從代碼審查到前端設(shè)計(jì),從安全審計(jì)到數(shù)學(xué)競
    2026-06-14
  • Claude Code自動運(yùn)行方法大全

    這篇文章主要為大家介紹了Claude自動運(yùn)行方法大全,詳述AutoMode、Shift+Tab及白名單策略,推薦AutoMode為最安全便捷方案,適用于日常開發(fā)與團(tuán)隊(duì)環(huán)境安全高效運(yùn)行,需要的朋友
    2026-06-12
  • 一文詳解如何使用腳本清理Claude Code緩存信息

    我每天使用Claude Code大約一個(gè)月,注意到我的~/.claude目錄占了1.3GB,沒有自動清理,會議數(shù)據(jù)不斷堆積,下面小編就和大家分享一下如何使用腳本清理Claude Code緩存信息吧
    2026-06-12
  • Claude Code CLI完整命令參考手冊(值得收藏)

    這篇文章主要為大家詳細(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

最新評論

双牌县| 农安县| 松江区| 新乐市| 临沭县| 永济市| 唐河县| 江门市| 广州市| 西乌珠穆沁旗| 凤阳县| 常熟市| 广昌县| 陕西省| 龙门县| 德惠市| 图片| 石林| 当雄县| 开化县| 东阳市| 鲁甸县| 昆山市| 绥德县| 建始县| 弋阳县| 新宾| 从江县| 洮南市| 汉源县| 承德市| 铅山县| 炉霍县| 噶尔县| 城固县| 瑞金市| 吉木萨尔县| 西盟| 赤壁市| 颍上县| 永福县|