
你考虑从 VSCode 转到 Cursor 吗?
原文:towardsdatascience.com/should-you-switch-from-vscode-to-cursor-45b1a0320d07
原文:towardsdatascience.com/should-you-switch-from-vscode-to-cursor-45b1a0320d07
你考虑从 VSCode 转到 Cursor 吗?
https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/2c32148f3b319f51d86dbaa8239505df.png
这张图是由 Black Forest Labs 用 FLUX.1 制作的,来源于 Grok 2。
前言
作为开发者,我们总是希望找到一些工具,帮我们提升工作效率,顺便让编码变得更有趣。我已经在使用 Visual Studio Code (VSCode) 超过六年了,差不多所有我合作的开发者也都喜欢用这个集成开发环境(IDE)。
在2023年,Cursor(由 Anysphere 研究实验室推出)获得了来自 OpenAI 的800 万美元投资,总融资达到了 1100 万美元。他们的目标很明确:
在未来的几年内,我们希望打造一个比任何现有工具都更有用、更愉快、更有趣的代码编辑器。
到2024年,越来越多的开发者开始尝试或完全转向 Cursor,成为他们的首选 IDE。
我写这篇文章的目的是分享我使用 Cursor 的体验,以及如何将其与 VSCode 进行对比。具体说来,我会讨论这两个 IDE 在数据科学方面各自的人工智能辅助功能表现。
Cursor 是什么呢?
Cursor 最初是从Microsoft 的 VSCode GitHub 仓库分叉而来的,Anysphere 团队利用了它的开源代码,决定把这个作为开发Cursor的基础。
光标是当前编程实践与未来人机协作编程之间的桥梁。它的使命是创建一个高度集成人工智能(AI)的 IDE,效率比任何程序员高出整整一个数量级。
通过保留 VSCode 的熟悉界面和丰富的扩展生态,Cursor 降低了开发者的上手门槛,让大家感觉转向这个 AI 驱动的 IDE 就像自然升级,而不是经历一次痛苦的技术变革。
我之前的 VSCode 体验如何?
我已经使用 VSCode 超过六年,还是从它发布时起就开始用 GitHub Copilot,甚至为其付费。
从界面设计来看,VSCode 真不错。它很灵活,连默认布局都能满足你在项目中的各种需求(我能理解 Anysphere 为何选择保持这种设计)。而且,VSCode 的扩展生态系统也非常出色,Anysphere 在开发 Cursor 时也保持了这一点。
2024年10月29日,Claude 3.5 Sonnet 在 GitHub Copilot 上上线。在此之前,由于 OpenAI 和微软的合作,你唯一可以使用的 LLM 选项就是 OpenAI 的模型。虽然这并不糟糕,但看到其他 LLM 在编码基准测试中表现更好,心里总会有点不爽,因为它们在 GitHub Copilot 上是用不了的。
作为一名数据科学家,我大部分的探索性工作都是用 Jupyter Notebooks 完成的。发现 VSCode(还有 GitHub Copilot)在使用 Jupyter Notebooks 时表现得非常好,每当创建新的单元格时,我都能请求 GitHub Copilot 的帮助。
https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/ba0b9db5272ec0ecc82ebaa69635b1bd.png
VSCode 添加新 Jupyter Notebook 单元格时的 “生成” 选项。
https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/1de3a23e560fcb9fdd5e5513fd93d5e5.png
请求 Copilot 生成代码后的示例输出。
VSCode 还让你可以和 GitHub Copilot 讨论项目。通过使用 /explain、/fix 和 /tests 等快捷键,你可以让 Copilot 在 VSCode、工作区或终端级别提供帮助。而使用 “#” 符号,你可以让它专门查看你的代码片段、代码库、编辑器或文件。
这些快捷键让在 VSCode 中使用 GitHub Copilot 和 Jupyter Notebooks(以及其他文件类型)变得非常顺畅。虽然非 OpenAI 的 LLM 还在起步阶段,但它的引入确实是个不错的补充。
为了写这篇文章,我强调了我在使用 VSCode 和 GitHub Copilot 中的一些主要体验。如果你有更具体的问题,欢迎通过社交媒体联系我。
我为什么决定切换?
根据 “我之前的 VSCode 体验”,可能有人会好奇,既然我对 VSCode 的体验还不错,为什么会选择下载 Cursor。
主要原因是和我聊天的很多开发者已经开始转向 Cursor了。就在最近,Aman Sanger、Arvid Lunnemark、Michael Truell 和 Sualeh Asif 在 Lex Fridman 播客 上详细讨论了 Cursor。我听了整整 2 小时 29 分钟,觉得他们说的内容非常吸引人。
再加上,Cursor 是可以免费安装的,还有免费层让你体验功能,我觉得是时候亲自去试试 Cursor 了。
使用 Cursor 的体验如何?
我对 Cursor 的第一印象是它保留了 VSCode 的界面,还会提示你下载所有的 VSCode 扩展,让你在写代码(或提示 LLM)之前感到非常舒适。
第一次打开 Cursor,你会看到一个欢迎清单,出现在侧边栏的顶部。
https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/a5475d1057ba6a2cd895848350cc09d2.png
Cursor 的欢迎清单。
这个清单的目的是介绍 Cursor 的一些核心功能,设计得很贴心,因为它提供了使用这个 IDE 执行每项任务所需的快捷键。
完成入门(比如下载扩展等)后,我决定导入我最近在做的一个项目。就在这个时候,我意识到 Cursor 在与 Jupyter Notebooks 的兼容性上不及 VSCode。
用 Cursor 快速构建你的项目,发现编程的乐趣
点击这里查看相关图示
在添加新的 Jupyter Notebook 单元格时,我们可以看到 Cursor 的选项。
如上图所示,Cursor 里没有“生成”这个选项卡。不过,你依然可以用Ctrl/⌘ + K来调出 LLM(大型语言模型),但这体验上比不上 VSCode。
一旦你有了代码片段,使用Ctrl/⌘ + L来和 LLM 对话是可以的。可惜的是,当我在 Cursor 中用 Jupyter Notebooks 的时候,接受 LLM 的代码建议功能不太好用,这让我感到挺失望的。
在这种情况下,我决定开始一个新的 Python 项目。我只用到了.py 文件,选择了一个我不太熟悉的主题,预计需要几个小时来开发一个不依赖 AI 的最小可行产品(MVP)。我决定做一个用 pygame 创建的游戏。
Cursor 中有一个叫“Composer”的功能,能够让开发者通过描述项目的概念来生成整个项目结构。这样开发者就不需要手动设置文件、配置环境或写样板代码,AI 会简化这些初始设置。
利用 Composer,你可以输入一些关键的项目信息,比如:
- 项目的概念或想法
- 想用的编程语言
- 测试的需求
- 需要的文档(例如 README.md)
- 虚拟环境的配置(requirements.txt)
我想试试这个功能,看看它如何帮助我的 pygame 项目。我最初的提示是:
用 pygame 制作一款俄罗斯方块游戏,添加测试,并把所有说明写进 README.md,以便运行游戏。创建适当的文件夹结构,把 src、tests 等分开,并按照项目结构创建所有 Python 脚本。
经过少许调整,结果真的是太棒了!项目文件夹结构完美,测试也成功创建,还生成了一个详细的 README.md 文件,告诉用户如何启动俄罗斯方块游戏。
查看使用 Cursor 开发的俄罗斯方块游戏图示
这一切都在几分钟内完成,之后我花了一些时间修复小问题和重新设计俄罗斯方块的布局。
想了解 Cursor 的更多功能,可以在这里查看哦。
总结
使用 Cursor 已经两个星期了,我决定在未来的项目中都用它。
在使用 Cursor 的 Composer 功能时,我的体验真的是无与伦比,感觉这是一款革命性的产品。如果微软正在开发自己的类似版本来增强 GitHub Copilot 的功能,我一点也不惊讶。
不过,VSCode 我也没打算完全放弃。最近几周,GitHub Copilot 进行了更新,展现出与竞争对手保持同步的决心。
由于 Cursor 是基于 VSCode 开发的,所以在这两个 IDE 之间切换也不需要对代码库或配置进行额外改动。我选择用哪个工具,主要看它们的功能如何帮助我完成手头的任务,当然,最后还得考虑价格。
说到价格,GitHub Copilot 每月收费 10 美元,而 Cursor Pro 每月 20 美元,后者是前者的两倍。两款产品都没有强制合同,如果你愿意,可以每月在它们之间切换,不会产生额外费用。
免责声明:文中所有观点均基于我个人经历,我与 Cursor 并无任何关系。此外,文中所有图片除另有说明外均为作者所有。
如果你喜欢这篇文章,欢迎关注我在 Medium 的账号,X,还有GitHub,获取更多与数据科学、人工智能和工程相关的内容。
祝你学习愉快!








