Claude Code 深度评测:一个 Java 程序员用了一个月的真实感受

Published on in ai

我为什么开始用 Claude Code

先说背景(实测):我是 Java 后端,日常 Jstack 是 Spring Boot + MyBatis + MySQL + Redis,用 IDEA 写了十年代码。2025 年开始用 Cursor,感觉 Tab 补全挺爽的,但始终觉得差点什么——Cursor 是在 IDE 里帮我写代码,但我没法让它自主完成一个完整的任务

2026 年初开始用 Claude Code。说实话,第一次用有点不适应——没有 GUI,纯命令行,感觉回到了上世纪。但用了一周之后,真香。

这篇文章记录我一个月来用 Claude Code 的真实体验,不讲营销话术,只说一个程序员视角的好坏。


Claude Code 到底是什么?

简单说:Claude Code 是 Anthropic 出的一个终端 AI 编程代理。它不是 IDE 插件,是直接在终端里运行的。你告诉它"我要做什么",它会自主读代码、改文件、跑命令、调测试。

和 Cursor/Copilot 的核心区别:

Cursor / Copilot Claude Code
运行方式 IDE 内 终端独立
交互模式 你写代码,它补全 你说需求,它执行
自主性 辅助你 代替你做
适合场景 日常编码 原型/重构/自动化

安装与配置:比你想象的简单

安装(实测)

# macOS / Linux curl -fsSL https://claude.ai/install.sh | bash

# 或者用 npm
npm install -g @anthropic-ai/claude-code

安装完 claude 命令就能用了。第一次运行会引导你登录 Anthropic 账号。

核心配置文件(实测)

Claude Code 最核心的配置是两个文件,都在项目根目录:

CLAUDE.md — 项目级的 AI 行为指令,相当于给 Claude Code 的系统提示词:

# 项目规范

## 技术栈
- Java 17 / Spring Boot 3.x / MyBatis / MySQL 8.0 / Redis 7
- 前端:Vue 3 + Element Plus

## 编码规范
- 所有 API 返回统一格式:Result<T> { code, message, data }
- 异常统一用 @RestControllerAdvice 处理
- 数据库操作必须加 @Transactional
- 日志用 Slf4j,关键操作必须打日志

我的 CLAUDE.md 片段(实测):

# 赚钱项目 — AI 自动化博客

## 项目规范
- 博客 JSON 存放:blogdata/
- 命名:YYYY-MM-DD-<id>.json
- 使用 Python json.dump 写入,ensure_ascii=False

写作规范

  • 中文,经验体
  • 每篇 ≥3 处个人经历
  • 内容标注:实测/来源/传闻

这个文件写好了,Claude Code 的行为会精准很多。我花了一个下午调 CLAUDE.md,之后的工作效率直接翻倍

CLAUDE.local.md — 本地私密配置,不会提交到 git,放个人的偏好设置。

我的配置经验(实测)

写好 CLAUDE.md 是 Claude Code 正确理解你项目的关键。我有几个建议:

  1. 写清楚技术栈和版本号:别只说"Spring Boot",说"Spring Boot 3.2 / Java 17"
  2. 写代码规范:命名约定、包结构、API 格式——这些 Claude Code 生成代码时会严格遵守
  3. 写"不要做什么":比如"不要自己发明新的异常类"、“不要引入未讨论的依赖”
  4. 保持更新:项目规范变了记得同步更新 CLAUDE.md

5 个让我惊艳的使用场景

场景一:一句话生成 CRUD

需求:新增一个"标签管理"功能,包括 Controller / Service / Mapper / Entity / 建表 SQL。

不用 Claude Code 的话,这些文件一个个手写最少半小时。

用 Claude Code(实测):

$ claude "新增标签管理功能: - 表名:t_tag,字段:id, name, color, create_time - 提供增删改查 API - 用 MyBatis-Plus - API 返回 Result<T> 格式"

Claude Code 自动完成了:

  1. 读取项目结构,理解现有代码规范
  2. 创建 Entity / Mapper / Service / Controller 四个文件
  3. 生成建表 SQL
  4. 生成 Postman 测试用例
  5. 自动把我项目里的 Result 类和异常处理规范应用上了

整个过程大约 2 分钟。我只需要检查一下逻辑,微调几个字段名就够了。

场景二:跨文件重构

需求:把项目里所有使用 Date 的地方改为 LocalDateTime,并确保序列化正确。

这个需求涉及 20+ 个文件。手动改的话不仅要改类型,还要改 Jackson 序列化配置、数据库映射、前端传参。

$ claude "把项目里所有的 java.util.Date 替换为 java.time.LocalDateTime: 1. 修改所有 Entity 和 DTO 2. Jackson 序列化配置加上 JavaTimeModule 3. SQL 对应的 datetime 类型不用改 4. 确保 @RequestParam 接收日期参数正常"

Claude Code 在 5 分钟内搞定了,改完还自动跑了一遍 mvn test 确保没挂。我检查了改动,发现它甚至把我遗漏的一个工具类里的 Date 也改了。

场景三:分析 bug 根因

需求:线上报了一个偶发的 NullPointerException,日志只显示在 OrderService.processOrder() 第 87 行。

$ claude "分析 OrderService.processOrder() 里可能产生 NullPointerException 的所有场景, 帮我加上防御性代码。重点关注第 87 行附近的 getCoupon() 调用"

Claude Code 读完代码后指出来:getCoupon() 在订单没有使用优惠券时可能返回 null,但后续 getCoupon().getDiscountAmount() 直接调用了。这不是第 87 行的问题,而是 NPE 在第 87 行才暴露出来。它给出了 3 种修复方案并推荐了最合适的那种。

这个分析过程,如果让我自己排查,可能需要 10-15 分钟。它 1 分钟搞定了。

场景四:写技术文档

需求:给一个新接手的项目写 README 和接口文档。

$ claude "分析这个项目,生成 README.md,包括: 项目简介、技术栈、模块说明、本地启动步骤、API 列表"

生成的 README 质量相当高——项目结构图、API 清单、启动命令、环境要求一应俱全。我只需要补充部署相关的敏感信息。

场景五:自动化脚本

需求:写一个脚本批量处理 blogdata/ 下的 JSON 文件,统计每篇文章的字数和分类。

$ claude "写一个 Python 脚本,扫描 blogdata/ 下所有 JSON 文件, 统计:总文章数、按 category 分类数量、每篇文章中文字数, 输出为 CSV"

30 秒生成脚本,跑起来直接出结果。这种重复性的脚本工作,Claude Code 比我自己写快 10 倍。


Claude Code 的 5 个坑,我都替你踩过了

坑一:大项目的上下文理解有限

虽然 Claude Code 说支持 200K token 上下文,但实际体验(实测),当项目文件超过 100 个时,它的理解力会下降。表现为:

  • 改代码时漏改关联文件
  • 生成的代码和现有架构风格不一致

解决方案:把大项目拆成小模块,每次只让它处理一个模块的事情。在 CLAUDE.md 里写清楚模块边界。

坑二:终端输出太长时会"自杀"

Claude Code 运行 shell 命令时,如果输出特别长(比如 mvn install 的完整日志),它会尝试读完整个输出,然后……上下文爆了。

解决方案:让它在命令后面加 2>&1 | tail -50,只看关键部分。

坑三:幻觉仍然存在

Claude Code 偶尔会"发明"不存在的 API 或配置项。比如有一次(实测),它给我的 Spring Boot 项目生成了一个 @ClaudeGenerated 注解——这个注解根本不存在。

解决方案:永远 review 它生成的代码,特别是涉及框架 API 的部分。git diff 是你的好朋友。

坑四:成本控制

Claude Code Pro 是 $20/月(来源:Anthropic 官网),但如果用 API 按量计费,重度使用的话一个月可能花到 $50-100。如果用量很大,Pro 订阅更划算。

我的建议:先用 Pro 订阅一个月试试,如果日均使用超过 2 小时,Pro 的性价比更高。

坑五:不是所有场景都适合

以下场景我不推荐用 Claude Code(实测得出的结论):

  • ❌ 简单的一行代码修改(打开 IDEA 改更快)
  • ❌ UI 开发和调试(终端看不到界面)
  • ❌ 需要上下文极其精准的场景(比如改动核心业务逻辑)
  • ✅ 最适合:批量修改、原型开发、自动化、文档生成

我的结论:什么人适合,什么人不适合

适合用 Claude Code 的人

  • ✅ 后端程序员,特别是做批量开发和重构
  • ✅ 熟悉命令行,不排斥终端操作
  • ✅ 有代码审查习惯,能发现 AI 的错误
  • ✅ 经常写脚本和自动化工具

不适合用 Claude Code 的人

  • ❌ 前端开发(UI 调试不方便)
  • ❌ 编程初学者(看不懂 AI 生成的代码,不知道对不对)
  • ❌ 喜欢 IDE 的 GUI 操作和可视化交互
  • ❌ 做的是极其标准化的工作(AI 帮不上什么忙)

我的最终评分

维度 评分 说明
代码生成质量 8.5/10 Java/Spring Boot 场景表现优秀,偶有幻觉
自主执行能力 9/10 能独立完成文件读写、命令执行、测试
易用性 7/10 命令行门槛高,但熟练后效率极高
上下文理解 8/10 中小项目很好,大项目需要拆分
性价比 8/10 Pro 订阅 $20/月,按重度使用看很值
综合 8.5/10 后端程序员的效率神器

延伸阅读


免责说明:本文所有(实测)内容来自博主真实使用体验。Claude Code 的版本和价格可能随时间变化,请以 Anthropic 官网为准(来源:docs.anthropic.com)。