Tutorial 2: AI 编程助手
Abstract |
AI 编程助手的类型与选择 |
Authors |
Walter Fan |
Status |
WIP |
Updated |
2026-02-07 |
AI 编程助手概览
AI 编程助手是氛围编程的核心工具。它们可以分为几大类:
AI 编程助手分类
┌─────────────────────────────────────────────────────────────────┐
│ AI 编程助手 │
├─────────────────┬─────────────────┬─────────────────────────────┤
│ AI-Native IDE │ IDE 插件 │ 命令行 / Web 工具 │
├─────────────────┼─────────────────┼─────────────────────────────┤
│ • Cursor │ • GitHub Copilot│ • Aider │
│ • Windsurf │ • Codeium │ • Claude CLI │
│ • Zed │ • Tabnine │ • ChatGPT / Claude Web │
│ • Void │ • Amazon Q │ • Replit Agent │
└─────────────────┴─────────────────┴─────────────────────────────┘
AI-Native IDE
这类工具从设计之初就以 AI 为核心,提供最深度的 AI 集成体验。
Cursor
Cursor 是目前最流行的 AI-Native IDE,基于 VS Code 构建。
核心特性:
特性 |
说明 |
|---|---|
Chat |
与 AI 对话,支持 @ 引用文件、符号、文档 |
Composer |
多文件编辑,AI 可同时修改多个文件 |
Inline Edit (Cmd+K) |
在代码中直接编辑,无需切换窗口 |
Tab 补全 |
智能代码补全,支持多行补全 |
Rules |
自定义规则,让 AI 遵循你的编码规范 |
MCP |
支持 Model Context Protocol 扩展 |
适用场景:
日常开发工作
快速原型开发
代码重构
学习新技术
示例:使用 Cursor Chat
@main.py @utils.py
请帮我重构这两个文件:
1. 将重复的数据库连接代码提取到 utils.py
2. 添加连接池支持
3. 添加重试机制
Windsurf
官网: https://codeium.com/windsurf
Windsurf 是 Codeium 推出的 AI-Native IDE。
核心特性:
Cascade: 多步骤自动化,AI 可以自主完成复杂任务
Flows: 预定义的工作流模板
深度代码理解: 强大的代码索引和搜索
特点:
更强调 AI 的自主性
适合需要 AI 完成大量自动化工作的场景
Zed
官网: https://zed.dev
Zed 是一个高性能的代码编辑器,由 Atom 的创始团队开发。
核心特性:
极致性能: 使用 Rust 编写,启动和响应极快
协作编辑: 原生支持多人实时协作
AI 集成: 内置 AI 助手
特点:
性能优先
适合追求速度的开发者
IDE 插件
这类工具作为插件集成到现有 IDE 中,让你在熟悉的环境中使用 AI。
GitHub Copilot
官网: https://github.com/features/copilot
GitHub Copilot 是最早的 AI 编程助手之一,由 GitHub 和 OpenAI 合作开发。
核心特性:
特性 |
说明 |
|---|---|
代码补全 |
实时的代码建议 |
Copilot Chat |
在 IDE 中与 AI 对话 |
Copilot Edits |
多文件编辑能力 |
CLI |
命令行中使用 Copilot |
支持的 IDE:
VS Code
Visual Studio
JetBrains IDEs
Neovim
Xcode
示例:使用 Copilot Chat
/explain 这段代码的作用是什么?
/fix 修复这个 bug
/tests 为这个函数生成测试
Codeium
Codeium 提供免费的 AI 代码补全服务。
核心特性:
免费使用: 个人用户完全免费
广泛支持: 支持 70+ 编程语言
多 IDE 支持: VS Code、JetBrains、Vim 等
特点:
对个人开发者友好
补全质量不错
Amazon Q Developer
官网: https://aws.amazon.com/q/developer/
Amazon 推出的 AI 编程助手,特别擅长 AWS 相关开发。
核心特性:
AWS 专家: 深度理解 AWS 服务
安全扫描: 自动检测安全漏洞
代码转换: 支持 Java 版本升级等
适用场景:
AWS 云开发
Java 项目现代化
命令行工具
对于喜欢终端的开发者,命令行 AI 工具是很好的选择。
Aider
Aider 是一个强大的命令行 AI 编程工具。
核心特性:
# 安装
pip install aider-chat
# 基本使用
aider
# 指定文件
aider main.py utils.py
# 使用特定模型
aider --model claude-3-5-sonnet
常用命令:
命令 |
说明 |
|---|---|
|
添加文件到对话上下文 |
|
从上下文移除文件 |
|
显示待应用的更改 |
|
提交更改到 Git |
|
撤销上一次更改 |
特点:
Git 集成良好
支持多种 AI 模型
适合终端爱好者
Claude CLI
Anthropic 官方的命令行工具。
# 安装
npm install -g @anthropic-ai/claude-cli
# 使用
claude "帮我写一个 Python 函数计算斐波那契数列"
选择合适的工具
选择 AI 编程助手时,考虑以下因素:
决策矩阵
考虑因素 |
Cursor |
Copilot |
Codeium |
Aider |
|---|---|---|---|---|
价格 |
$20/月 |
$10-19/月 |
免费 |
免费(需 API) |
IDE 绑定 |
Cursor |
多 IDE |
多 IDE |
终端 |
上下文管理 |
★★★★★ |
★★★☆☆ |
★★★☆☆ |
★★★★☆ |
多文件编辑 |
★★★★★ |
★★★★☆ |
★★★☆☆ |
★★★★☆ |
自定义规则 |
★★★★★ |
★★☆☆☆ |
★★☆☆☆ |
★★★☆☆ |
学习曲线 |
低 |
低 |
低 |
中 |
推荐场景
场景 |
推荐工具 |
|---|---|
全职开发者,追求效率 |
Cursor |
已有 IDE 习惯,不想换 |
GitHub Copilot |
预算有限的个人开发者 |
Codeium |
终端爱好者 |
Aider |
AWS 开发 |
Amazon Q Developer |
AI 模型选择
不同的 AI 编程助手使用不同的底层模型:
主流模型对比
模型 |
提供商 |
特点 |
适用场景 |
|---|---|---|---|
Claude 3.5 Sonnet |
Anthropic |
代码能力强,上下文长 |
复杂编程任务 |
GPT-4o |
OpenAI |
通用能力强 |
多样化任务 |
Claude 3 Opus |
Anthropic |
推理能力最强 |
架构设计、复杂问题 |
GPT-4o-mini |
OpenAI |
快速、便宜 |
简单任务、快速迭代 |
DeepSeek Coder |
DeepSeek |
开源、代码专精 |
代码生成、补全 |
模型选择建议
日常开发: Claude 3.5 Sonnet 或 GPT-4o
复杂架构设计: Claude 3 Opus
快速迭代: GPT-4o-mini
预算有限: DeepSeek Coder
实践:配置你的开发环境
步骤 1:安装 Cursor
下载对应系统的安装包
安装并启动
步骤 2:配置模型
打开 Settings(Cmd/Ctrl + ,)
选择 Models
配置你偏好的模型:
默认模型:Claude 3.5 Sonnet(推荐)
快速模型:GPT-4o-mini
高级模型:Claude 3 Opus
步骤 3:导入 VS Code 配置
如果你之前使用 VS Code:
Cursor 会自动检测并提示导入
或者手动:Settings → General → Import VS Code Settings
步骤 4:安装必要扩展
推荐安装的扩展:
Python(如果使用 Python)
ESLint(JavaScript/TypeScript)
Prettier(代码格式化)
GitLens(Git 增强)
小结
本教程介绍了主流的 AI 编程助手:
AI-Native IDE: Cursor、Windsurf、Zed
IDE 插件: GitHub Copilot、Codeium、Amazon Q
命令行工具: Aider、Claude CLI
关键要点:
选择工具要考虑:价格、功能、学习曲线
Cursor 是目前最全面的 AI 编程工具
模型选择影响输出质量
下一步
在下一个教程中,我们将深入学习 Cursor 的各种命令和快捷键。
练习
安装至少两种 AI 编程助手,对比它们的体验
在 Cursor 中尝试不同的 AI 模型,感受差异
使用 Aider 完成一个简单的编程任务
记录你最喜欢的工具和原因