Claude Code使用及安装干货教学

AI教程 2025-03-19

Claude Code 是 Anthropic 开发的一款代理式编码工具,直接在终端中运行,帮助开发者高效地重构、编写和调试代码。通过了解整个代码库,Claude Code 有助于简化工作流程,使其成为软件开发的强大工具。

在本教程中,我将介绍如何使用 Claude Code 通过重构、记录和调试代码来改进软件开发工作流程。具体而言,我们将:

  • 重构 supabase-py 存储库中的文件 以提高代码的可读性和可维护性。
  • 添加文档和内联注释,以更好地理解现有代码库。
  • 使用 Claude Code 的调试功能识别和解决错误。

您将学习如何将 Claude Code 集成到您的开发流程中,以获得更高效和自动化的体验。在我们开始之前,请务必查看我们对 Claude 3.7 Sonnet 和 Claude Code 的短视频报道:

什么是 Claude Code?

Claude Code 是一种直接在您的终端中运行的工具,它可以理解您的代码库并使用自然语言命令协助开发任务。通过与开发环境集成,Claude Code 消除了对额外服务器或复杂设置的需求,使开发人员能够专注于编写和改进代码。

image.png

以下是 Claude Code 的一些主要功能:

  • 编辑和重构:使用 AI 支持的建议修改、优化和增强您的代码库。
  • 错误修复:识别并解决错误、缺失的依赖项和性能瓶颈。
  • 代码理解:询问有关代码的体系结构、逻辑和依赖项的问题。
  • 自动化测试和linting:执行并修复失败的测试,运行linting命令,并提高代码质量。
  • Git 集成:轻松搜索 git 历史记录、解决合并冲突、创建提交和生成拉取请求。

无论是从事开源项目还是管理企业级代码库,Claude Code 都可以帮助您实现智能自动化,以适应您的编码风格和项目要求。以下是这项服务的一些理想用户:

  • 软件开发人员:提高代码质量和可维护性。
  • 开源贡献者:了解和增强不熟悉的代码库。
  • DevOps 工程师:自动执行代码审查和 linting 任务。

目前,Claude Code 仅作为预览版提供,我们鼓励开发人员对其进行测试并提供反馈 - 如果您尚未注册,可以在此处加入候补名单

让我们开始我们的动手项目。

第 1 步:设置 Claude 代码

一旦您退出候补名单,Anthropic 团队会为您提供一个链接,用于在本地进行身份验证和运行 Claude Code。

image.png

这会将您重定向到 Anthropic 帐户以将 Claude Code 连接起来。授权连接,您就完成了。 确保您的账户具有有效的计费设置。

image.png




接下来,只需在终端上运行以下命令即可。

<button class="code-copy-button" data-trackid="copy-code" style="background-repeat: no-repeat; -webkit-box-align: center; align-items: center; border-width: 0px; border-style: initial; border-color: initial; border-radius: 50%; box-shadow: none; display: flex; height: 32px; -webkit-box-pack: center; justify-content: center; line-height: 1.5; padding: 0px; position: absolute; right: 16px; top: 16px; width: 32px;"><svg aria-hidden="true" height="16" width="16" viewBox="0 0 18 18" class="css-6su6fj"></svg></button>
npm install -g @anthropic-ai/claude-code

此命令会在您的计算机上安装 Claude Code。安装后,导航到您的项目目录并通过运行启动 Claude:

<button class="code-copy-button" data-trackid="copy-code" style="background-repeat: no-repeat; -webkit-box-align: center; align-items: center; border-width: 0px; border-style: initial; border-color: initial; border-radius: 50%; box-shadow: none; display: flex; height: 32px; -webkit-box-pack: center; justify-content: center; line-height: 1.5; padding: 0px; position: absolute; right: 16px; top: 16px; width: 32px;"><svg aria-hidden="true" height="16" width="16" viewBox="0 0 18 18" class="css-6su6fj"></svg></button>
cd your-project-directory claude

image.png

现在,Claude Code 已准备就绪。

第 2 步:设置开发环境

在本演示中,我将使用 Supabase Python 库 supabase-py,这是一个开源 Python 客户端,用于与 Supabase(基于 PostgreSQL 构建的后端即服务)进行交互。Supabase 提供了一套工具,包括身份验证、实时订阅、存储和自动生成的 API。

让我们从克隆存储库并设置我们的开发环境开始。

1. 打开终端,导航到要克隆 Supabase-py 存储库的目录(例如 ),然后运行以下命令:cd Desktop

<button class="code-copy-button" data-trackid="copy-code" style="background-repeat: no-repeat; -webkit-box-align: center; align-items: center; border-width: 0px; border-style: initial; border-color: initial; border-radius: 50%; box-shadow: none; display: flex; height: 32px; -webkit-box-pack: center; justify-content: center; line-height: 1.5; padding: 0px; position: absolute; right: 16px; top: 16px; width: 32px;"><svg aria-hidden="true" height="16" width="16" viewBox="0 0 18 18" class="css-6su6fj"></svg></button>
git clone https://github.com/supabase/supabase-py.git cd supabase-py

2. 接下来,通过在终端中逐个运行以下命令来创建一个虚拟环境并安装所需的依赖项

<button class="code-copy-button" data-trackid="copy-code" style="background-repeat: no-repeat; -webkit-box-align: center; align-items: center; border-width: 0px; border-style: initial; border-color: initial; border-radius: 50%; box-shadow: none; display: flex; height: 32px; -webkit-box-pack: center; justify-content: center; line-height: 1.5; padding: 0px; position: absolute; right: 16px; top: 16px; width: 32px;"><svg aria-hidden="true" height="16" width="16" viewBox="0 0 18 18" class="css-6su6fj"></svg></button>
python3 -m venv env source env/bin/activate # On Windows, use ./env/Scripts/activate pip install -e .

您的 Python 环境现在已经设置了运行 Supabase 库所需的所有依赖项,并且您的存储库已准备好进行探索。

第 3 步:确定需要贡献的领域

一个很好的贡献方式是探索问题选项卡。在 Supabase 存储库中,我发现了一个与代码可读性、结构和缺乏有意义的注释有关的问题。client.py

以下是我们将要对 Claude Code 执行的作:

  • 我们将重构代码以增强可读性、可维护性和结构。
  • 添加有意义的文档字符串和内联注释以阐明不同组件的用途。
  • 通过分析问题和其他潜在错误来识别和修复错误。

第 4 步:试验 Claude Code

由于我们已经在 supabase-py 文件夹中,因此导航到包含该文件的 supabase 目录并运行 Claude Code:client.py

<button class="code-copy-button" data-trackid="copy-code" style="background-repeat: no-repeat; -webkit-box-align: center; align-items: center; border-width: 0px; border-style: initial; border-color: initial; border-radius: 50%; box-shadow: none; display: flex; height: 32px; -webkit-box-pack: center; justify-content: center; line-height: 1.5; padding: 0px; position: absolute; right: 16px; top: 16px; width: 32px;"><svg aria-hidden="true" height="16" width="16" viewBox="0 0 18 18" class="css-6su6fj"></svg></button>
cd supabase claude

image.png

Claude Code 现在可以访问 Supabase-py 文件夹中的每个文件和文件夹。现在,让我们进行实验。

重构代码

作为改进 Supabase Python SDK 的一部分,让我们重构文件以增强可读性、可维护性和组织性。只需在命令行中输入以下提示符:client.py

提示: 重构位于 Supabase 文件夹中的 client.py 文件中的代码。

Claude 将在继续之前要求确认。按 Enter 批准更改。完成后,Claude Code 将更新文件,在终端中显示修改,并提供所做更改的摘要。

使用 Claude Code,我们对以下功能进行了以下改进:client.py

  • 有序的导入:Claude Code  将相关导入分组到逻辑部分(身份验证错误、API 类型、函数错误),重命名导入以清晰起见,并删除冗余别名以保持一致性。
  • 增强的可读性:It 添加了部分注释以对导入进行分类,并删除了列表中的重复项,以实现更清晰的组织。__all__
  • 简化的客户端选项:它还通过将相似的导入合并到单个语句中来减少多行。

以下是原始代码和重构代码的并排比较。


image.png


image.png

记录代码

除了重构之外,Claude Code 还是一个强大的工具,用于生成、增强和标准化代码文档。它可以识别未记录的部分,生成结构化文档字符串或注释,并确保符合项目文档标准。

我们使用 Claude Code 来改进 中的文档,从而获得:client.py

  • 清除解释文件用途的模块级文档字符串。
  • 对导入进行分类(错误类型、客户端实现、存储服务)的详细部分注释。
  • 用于描述错误类型、客户端函数和重要组件的内联注释。

以下是重构代码和文档化代码的并排比较。

提示:通过添加注释来记录 client.py 代码,以提高理解。

image.png

添加文档后,您可以通过提示 Claude 来验证其是否符合您的项目标准:

提示检查文档是否符合我们的项目标准。

修复 bug

调试可能很耗时,但 Claude Code 通过分析错误消息、确定根本原因和提出修复建议,使其变得更容易。无论您是在处理缺失导入、运行时错误还是逻辑问题,它都可以通过提供可行的解决方案来帮助简化流程。

以下是使用 Claude Code 进行调试的方法:

  1. 确定问题:与 Claude 分享错误消息。
  2. 获取修复建议:向 Claude 询问可能的解决方案。
  3. 应用并验证修复:实施 Claude 的建议并检查问题是否已解决。

Claude Code 进行了以下安排,以解决文件中与导入相关的问题:client.py

  • 键入 ignore comments:添加了注释以禁止 IDE 和未解析导入的类型检查警告。# type: ignore
  • 一致的错误分类:Claude Code 确保从身份验证、数据库、存储和函数导入的错误被清楚地分组。
  • 保持代码可读性:添加了注释以指示为什么忽略某些导入而不是删除它们。

以下是原始代码和固定代码的并排比较。

提示:我看到一些错误,例如“Import gotrue.errors”无法解决。帮我修复 client.py 中的所有错误。

image.png

注: Claude Code 仍处于预览阶段,因此它没有建议 import 命令来解决问题,而是添加了忽略注释来禁止显示错误。随着它的不断改进,它将提供更精确的解决方案。

Claude Code 命令

以下是一些命令供您尝试 Claude。

Commands

Action

/clear

Clear conversation history and free up context  

/compact

Clear conversation history but keep a summary in context  

/cost

Show the total cost and duration of the current session

/doctor

Checks the health of your Claude Code installation

/help

Show help and available commands

/init

Initialize a new CLAUDE.md file with codebase documentation

/bug  

Submit feedback about Claude Code

/review

Review a pull request


©️版权声明:若无特殊声明,本站所有文章版权均归AI工具集原创和所有,未经许可,任何个人、媒体、网站、团体不得转载、抄袭或以其他方式复制发表本站内容,或在非我站所属的服务器上建立镜像。否则,我站将依法保留追究相关法律责任的权利。

相关文章