Cursor和Claude-Dev:我的看法
我最近一直在使用两个新工具 - Cursor 和 Claude-Dev - 这两个工具在开发者社区中都引起了相当大的关注。它们都旨在通过 AI 辅助使编码更快、更直观,但它们采用不同的方法,各有优缺点。在使用了大约一个月后,我认为是时候坐下来反思一下它们的优点和需要改进的地方了。
让我们从 Cursor 开始。
1、Cursor:熟悉但更快
Cursor 是 VSCode 的一个分支,如果你已经像我一样是 VSCode 用户,那么使用它非常容易。我不需要从头开始重建我的环境或设置键绑定。VSCode 中所有可用的功能都可以在 Cursor 中开箱即用 - 我的扩展、设置和键映射都可以顺利地延续下来。除了一个关键区别之外,过渡几乎是看不见的:AI 自动完成速度要快得多。事实上,根据我的经验,它比 GitHub Copilot 快 10 倍左右。
现在,“快 10 倍”并不是我从基准测试中得出的数字,而是使用了一段时间后的感觉。当你输入代码时,Cursor 会预测你的下一步动作,你不会觉得AI落后了,也不会觉得它在追赶。相反,它就在你身边,帮助你保持流畅。当我不用等待 Copilot 赶上来,也不用按三次 Tab 键来获得我想要的建议时,我惊讶地发现我的效率提高了多少。
Cursor 还有一个很好的功能,它可以嵌入和索引你的整个项目,让你更容易理解文件之间的关系。当你更新文件时,索引也会更新,这意味着AI可以更好地掌握代码库的各个部分是如何组合在一起的。如果你正在处理一个包含多个相互依赖的文件的大型代码库,这将非常有用。
2、Cursor的缺点
话虽如此,Cursor 中的一些最佳功能需要订阅才能使用。我通常不反对为真正有价值的工具付费,但在这种情况下,我有点失望,因为最有趣的 AI 功能(如多文件编辑)是高级版本的一部分。对于一个仍然相当新的工具,我想知道过早限制这些功能是否会限制它的采用,尤其是考虑到有多少开发人员已经在为 GitHub Copilot 付费。
我在使用 Cursor 时遇到的另一个问题是,虽然它在快速、小型任务方面表现出色,但在处理更复杂的问题时,它缺乏我所需要的一些灵活性。它非常适合快速代码建议和重构,但当我需要可以处理更复杂的任务(如读取日志或执行构建命令)的东西时,我发现自己正在寻找其他东西。
3、Claude-Dev:开源的弱势群体
这就是 Claude-Dev(现称为 Cline)的用武之地。Claude-Dev 是 VSCode 的一个开源扩展,虽然它没有 Cursor 那样的精致程度,但它正在迅速发展 - 在某些方面,它更强大。Claude-Dev 最引人注目的地方是,它似乎在试图做更多的事情,而不仅仅是建议代码片段。它是一种可以以更深入的方式与您的环境交互的工具。
例如,Claude-Dev 可以读取你的终端日志,理解 linting 错误,甚至运行任意 CLI 命令。这意味着,如果您问它为什么您的项目没有构建,它不仅会提供建议 - 它实际上会去查看相关文件,找出您正在使用的项目类型(Node、React、Python 等),并尝试为您构建它。如果出现错误,它会读取日志,尝试诊断问题,甚至可以在需要时应用修复。
但它并不完美。根据我的经验,Claude-Dev 的速度不如 Cursor,尤其是在进行编辑时。其中一个原因是它会重写整个文件,而不是只更新需要更改的部分。这会减慢速度,如果你要为 API 令牌付费(你需要提供要使用的 LLM 的 API 密钥),它会比应有的速度更快地消耗这些令牌。我一直在考虑为项目做出贡献,通过让它通过 sed 等 shell 命令仅更新必要的行来解决这个问题。
我发现一个特别有趣的功能是 Claude-Dev 如何使用 Puppeteer 来直观地测试和更新你的前端。你可以给它一个网站的屏幕截图,它会将其与你的应用程序进行比较,不断迭代,直到你的前端与你想要的外观相匹配。它不是最快的处理方式,但它在处理 CSS 方面出奇地好——至少对我来说,这通常有点浪费时间。
4、Claude-Dev的不足之处
Claude-Dev 绝对是一款适合那些愿意尝试一些粗糙东西的人的工具。与 Cursor 不同,Claude-Dev 更像是一款准备在黄金时段使用的精致产品,而 Cursor 更像是一款正在积极开发的强大工具。它并不总是第一次就把事情做对了,虽然它比我想要的慢,但它在不断改进。它是开源的,主要由一个人开发,这一事实让它的创新速度更加令人印象深刻。
5、那么你应该使用哪一个呢?
如果你正在寻找一种精致、快速的体验,专注于速度和快速建议,Cursor 可能是更好的选择。它感觉很敏捷,它与你现有的 VSCode 设置集成,并让你保持流畅,直到你遇到付费墙。但如果你对此感到满意,不需要额外的花哨功能,Cursor 是一个很棒的工具。
另一方面,如果你想要一个不仅仅是自动完成代码的东西——一个实际上可以帮助调试、构建和迭代你的项目的东西——Claude-Dev 更适合。它更通用,但也有点慢,边缘更粗糙。如果你乐于尝试并能忍受一些怪癖,那么它提供了 Cursor 目前所不具备的功能。
对我来说,Claude-Dev 胜出,主要是因为它与我的工作流程有更深层次的集成。读取日志、运行命令和迭代直到问题解决的能力非常宝贵,尤其是当我使用不熟悉的代码库时。话虽如此,当我需要快速行动并且不想等待 AI 处理命令时,我仍然会使用 Cursor。
6、最后的想法
Cursor 和 Claude-Dev 都提供了独特的优势,我认为我们只是触及了 AI 驱动的编码工具可以做的事情的表面。这里有很多潜力,特别是随着这些工具的不断发展。我很高兴看到它们的发展方向,我会继续尝试这两种方法,看看它们如何融入我的开发工作流程。
与此同时,我建议你亲自尝试这两种方法。每种工具都有其优点,并且你可能会发现其中一种工具比另一种更适合你的风格,这取决于你正在从事的工作。
原文链接:A Month with Cursor and Claude-Dev: My Thoughts
汇智网翻译整理,转载请标明出处