介绍
今年,AI 辅助编程工具正变得越来越流行,它们可以提升开发效率,减少重复性工作,并提供智能代码建议。目前AI辅助开发工具,都是一个AI大模型前面套一个壳,至于回答的内容好不好就看后面大模型的支持了,功能上来说都差不多。在没有出现这些工具时,我也是去ChatGPT 上问的,效果差不多,只是需要手动复制,有点麻烦。
对比 Cursor、GitHub Copilot、通义灵码(Tongyi Lingma)和 Trae 这几款 AI 编程助手的特点、优劣势以及适用场景。
如果需要看怎么使用的可以去看我之前记录的文章。
Cursor的使用: ➤ https://cnzain.cn/blogs/zain/ai-cursor
Github Copilot:➤ https://cnzain.cn/blogs/zain/aicopilot
通义灵码:使用太简单,没写
Trae(官方文档):➤ https://docs.trae.com.cn/docs/what-is-trae?_lang=zh
1. Cursor
对于我这个.net 开发来说,我习惯了使用VIsual Studio ,虽然也能在VS Code做编码,还是有诸多不便,调试不了,且项目打开后那个项目结构看着特别不习惯,但单独做前端项目时候就特别舒服了。
另外,这个是收费的,体验只有14 天,如果不是公司出钱,对我来说这就是就是最大的缺点,付费上班的感觉。
Cursor有一个比较优秀的功能,就是可以在上下文中选择图片。我用这个功能主要是用来找灵感和“借鉴”一些网站页面设计。直接在对话看里面输入“做一个和图片一模一样的页面“马上就出来了 。不是写不来,只是写在太费劲了有费时,所以直接交给AI。
虽然是国外的,但是速度还是很快的,应该是做了处理的。
- 集成 VS Code:Cursor 是一个基于 VS Code 的 AI 编程工具,提供类似 ChatGPT 的智能代码补全、错误修复和代码解释功能。
- 对话式交互:可以直接在代码编辑器内通过对话交互来修改代码或生成新代码。
- 强大的搜索功能:可基于项目上下文智能搜索相关代码。
- 自动修复错误:可以理解错误消息并提供修复建议。
适用场景
适合 VS Code 用户,尤其是希望在编辑器内进行 AI 交互的开发者。适合需要快速调试和修复代码的开发者。
优势与劣势
优势 | 劣势 |
---|---|
深度集成 VS Code,体验流畅 | 目前仅支持 VS Code,不适用于其他 IDE |
AI 代码建议质量较高 | 可能需要联网支持部分高级功能 |
提供智能搜索和错误修复 | 依赖 GPT-4,部分功能可能有调用限制 |
2. GitHub Copilot
我最开始使用的就是这个,新版Visual Studio自带,无缝连接,且有Github这个源码库支持,还是很强大。有免费和收费的,一直使用的是免费的,国内容使用起来有点慢,这个网络反应有时候需要2-3分钟。不过给出的内容还是可以的。
- 基于 OpenAI Codex:Copilot 由 GitHub 和 OpenAI 联合开发,能够提供上下文感知的代码建议。
- 支持多种 IDE:支持 VS Code、JetBrains 系列、Neovim 等。
- 代码补全能力强:能智能补全整行代码或完整函数。
- GitHub 生态整合:适合 GitHub 用户,无缝衔接代码仓库。
适用场景
适用于使用 GitHub 进行开发的团队和个人。适用于多个开发环境(如 VS Code、JetBrains)。
优势与劣势
优势 | 劣势 |
---|---|
支持多种 IDE,兼容性强 | 需要订阅,收费模式可能较贵 |
AI 代码补全质量优秀 | 可能会生成不符合最佳实践的代码 |
与 GitHub 无缝集成,适合 GitHub 用户 | 代码补全有时会产生冗余建议 |
3. 通义灵码(Tongyi Lingma)
通义灵码使用过一小段时间,它以扩展的方式可以添加到 VS 中,国内的反应比GitHub Copilot 快,也可以在对话框中进行沟通,其他功能比较简单,如下图。
- 深度结合阿里云生态:与阿里云生态无缝整合,适用于阿里云开发者。
- 优秀的中文支持:针对中文编程环境优化,适合中文开发者。
- 智能代码补全:可根据上下文提供智能代码建议,提高编程效率。
- Web 端支持:可通过 Web 端使用,无需特定 IDE。
适用场景
适用于阿里云生态的开发者,以及需要中文支持的编程环境。
优势与劣势
优势 | 劣势 |
---|---|
中文支持优异,适合中文开发者 | 主要适用于阿里云生态,适用范围有限 |
支持 Web 端使用 | 某些功能可能受限于阿里云服务 |
智能代码补全能力强 | 相较于 Copilot,社区资源较少 |
4. Trae
这个和Cursor差不多,没怎么深入使用,不过不目前是免费的。
- 字节跳动 AI 生态:深度结合字节跳动的开发平台,如飞书、火山引擎。
- 适用于企业级应用:支持企业级 AI 辅助编程,提高团队开发效率。
- AI 代码推荐:基于代码上下文推荐代码,提高开发速度。
- 内置云端支持:可结合云端计算资源,提高代码分析能力。
适用场景
适用于字节跳动生态的开发者,以及企业级应用的开发团队。
优势与劣势
优势 | 劣势 |
---|---|
适配字节跳动生态,适合企业级应用 | 主要面向字节系产品,适用范围有限 |
AI 代码推荐能力强 | 对个人开发者的支持较少 |
支持云端计算,提高代码分析能力 | 某些高级功能可能需要订阅 |
可能对特定业务场景优化 | 代码补全能力可能不如 Copilot 强 |
总结
工具 | 主要特点 | 适用场景 |
---|---|---|
Cursor | VS Code 集成,智能搜索,自动修复 | VS Code 用户,调试、搜索 |
GitHub Copilot | 强 AI 代码补全,GitHub 生态整合 | GitHub 用户,多 IDE 支持 |
通义灵码 | 中文支持好,结合阿里云生态 | 阿里云用户,中文开发者 |
Trae | AI 代码补全,适配字节生态 | 字节跳动生态用户 |
对于.net 开发个人还是比较倾向实用GitHub Copilot,比较无缝对接VS这个谁不喜欢呢?而且还可以白嫖。
其他的对IDE没太多依赖的可以选择Cursor,它智能提示和体验都是很不错的。如果像我一样喜欢免费的,也可以选择国产的两个吧,特别是Trae,最近推得还是比较多的,听说是要对齐Cursor。
对于简单的编程却是方便了不少,特别是智能提示,或者是变量命名等,都是很方便的。但对于比较复杂的项目,AI还是不太能搞定,例如我目前使用的ABP框架开发,让他参考之前的功能帮忙写一个增删改查的维护页面,它虽然能给出大多数类的代码,但还是需要人力去组装和处理细节,让他阅读这个项目再去做功能,估计够呛。
对于编程学习方便了不少,以前遇到不会的或者新的语法要去看文档,现在直接问AI,阅读源码也可以一键注释,真的方便了很多。
最后就是AI会不会替代程序员的问题?目前是不会的,就目前使用的几款来说,都还差得远,未来如何就不知道,也不是我改变的事!我就每天搬砖就好了,反正都是牛马,被替代了,就去做其他牛马!