简单尝试ClaudeCode

背景

最近越来越多的人使用AI编程了,有些人使用简单的代码提示工具,来辅助完成几行之内的代码生成。而另外一些人则使用AI分析项目,根据需求设计方案,最后生成代码,并生成单元测试。这次就尝试一下使用Claude Code

安装

支持的操作系统

macOS 10.15+ (推荐 macOS 12+)
Linux Ubuntu 18.04+, CentOS 7+, 或其他现代发行版
Windows Windows 10+ (通过 WSL2 推荐)

  • 必要依赖:

Node.js 16+ (用于某些 MCP 服务器)

Git 2.20+ (版本控制集成)

安装步骤

官方安装脚本(推荐)

  • macOS/Linux

curl -fsSL https://claude.ai/install.sh | sh

验证安装

claude --version

配置

  • 第一次运行会自动引导配置
    claude

  • 手动配置
    claude config set api-key YOUR_API_KEY

  • 验证配置
    claude config list

使用

分析整个项目

分析一下整个项目结构

总体来说分析的还不错,对于一个新手来说,可以很快的之后项目是做什么的。

定位具体业务代码

项目中角色授权工单逻辑在哪里

不仅找到了入口,还找到了发起工单的逻辑和工单通过之后的回调逻辑。

分析并检查特定需求

分析一下账号删除的时候是否都更新了closedAt字段

原以为Claude Code会通过搜索方法名为一些delete的方法中是否有设置closedAt字段来判断,这样判断会有一些不准确,毕竟删除账号的场景很多,有些并非是管理员直接触发的,还有一些异步逻辑在里面。
而Claude Code很准确的分析到了删除账号时会变更status字段,所以判断了所有将status字段设置成DELETED的时候是否更新了closedAt字段,结果还是非常准确的。

尝试自动生成单元测试

Claude Code会先查找是否存在目标单测,如果没有则新建。还会参考一些之前写过的单元测试,并保持风格统一。生成的速度很慢,并且生成之后编译不过。
通过多次对话,希望它能修正生成的单元测试,最终失败。可能是由于未精确识别maven配置,导致无法执行编译项目,最终无法知道报错信息。

生成一个简单的接口

让Claude Code生成一个简单的接口A,接口A需要调用下游系统的接口B来完成业务功能。
Claude Code也真的非常简单的生成了Controller,但并没有维持项目中分层的代码风格,直接在Controller调用下游系统。除此之外生成的代码无法编译通过也是一个问题,这次是因为下游的入参和接口A的入参不一致,Claude Code强硬的直接赋值。

总结

Claude Code 比较擅长分析项目,查找定位模块。但实际修改或者写代码还是有很多不足,体现在代码经常无法编译通过。
另一个缺点就是耗时太长,token消耗太大了。

总的来说,再可预见的将来,AI有可能会代替一些基础程序员来写代码,尤其是那些只会模仿已有代码写的新手。