17611538698
webmaster@21cto.com

扔掉 VS Code,新代码编辑器 Zed 时代到来

编程语言 0 848 2024-06-03 09:49:06

图片

21CTO导读:

过去的十年,微软的 Visual Studio Code(VS Code)是开发者首选的文本编辑器。它与微软生态系统(TypeScript,NPM软件包,GitHub,Azure 和 Edge 浏览器)的无缝集成使其成为开发人员的强大工具。但是,正如人们常说的那样,在科技领域没有什么技术可以永远称王称霸。新的Zed 作为一款快速、开源的代码编辑器,正在掀起一股新的浪潮。

背景

Zed 是由 Nathan Sobo 和之前在 GitHub 开发过 Atom 和 Tree-sitter 的团队共同开发的。他们希望开发一款快速、简单且好用的代码编辑器,专注于为开发人员带来更好的编码体验。以下是关于 Zed 历史的一些要点:

它始于团队在 GitHub 使用 Atom 和 Tree-sitter 的经历,在那里他们学到了很多关于为开发人员创建工具的知识。

主要目标是通过使用 Rust 提高其速度、保持其易于使用、添加用于编码的智能工具以及确保编码人员能够享受他们的工作来构建完美的代码编辑器。

团队认为其他流行的选项(例如 VS Code)太慢且太复杂。他们想尝试一些不同的东西。

Zed 于 2023 年首次推出,是一款无法更改的产品。但在 2024 年,他们决定将其开源,这意味着任何人都可以根据用户的反馈帮助改进它。

目前,Zed 仅适用于 Mac 电脑,但他们计划很快使其适用于 Linux,因为很多人都要求它并且 Rust 在 Linux 上运行良好。

将 Zed 开源是一个重大决定。团队相信与社区合作将使 Zed 变得更好。

总体而言,Zed 是一种全新的代码编辑方法,专注于开发人员的需求:速度、易用性和良好的体验。Zed 团队以 Rust 为基础,并热爱编码,希望树立新的标准。向社区开放意味着更多人可以帮助 Zed 变得更好。

技术特性

从技术上讲,Zed 是一款使用Rust 开发的新型编辑器,是能够同时使用计算机的 CPU 和 GPU 的编辑器,我们可以使用所谓的“开发”来玩这些不同的游戏,也就是使用不同的语言进行编码,来解决从简单到复杂的问题。

对于一个简单的文本编辑器来说,这是不是说的有点过头了,对吧?好吧,这就是它与其他编辑器的不同之处。启用 GPU 和 CPU 的使用,确实使它比程序员通常使用的大多数主流文本编辑器(例如 VS Code 和 Sublime)更快。我认为它不会像默认的 vim 或 Neovim 那样快,但与 VS Code 相比,它绝对更快,并且占用的内存也更少。

对于程序员来说,这是一个整体性能提升。

Zed 能够访问电脑的 GPU,这是一个特色,但并不是它与其它编辑器(不是唯一的)的不同之处。

Zed 官网链接:https: //zed.dev/

图片

人工智能开发

图片

使用 zed,开发者将获得内置的 GitHub copilot 和 GPT-4 的强大功能,你能够通过按“Ctrl+Enter”使用 GPT-4 重构代码。

如果这对你来说有点难,你甚至可以用纯英语或其它自然语言输入并获取源代码。也可以在助手面板中与其聊天而不更改任务,稍等一会就会参考对话生成内联文本(在你的源代码之间)。

所有这些 AI 功能开箱即用,几乎不需要配置和调整。

速度与性能


图片


从技术上和现实上讲,Zed 比任何其他文本编辑器都更快,这是通过使用 CPU 和 GPU 来打开它来实现的。Zed 编辑器的行为就像一个游戏窗口,文本编辑器元素可以像渲染游戏元素一样渲染。


图片

因此,它比 sublime text 和 VS Code 更快。主要是所有的文本编辑器都在一个处理器上运行,但 Zen 在 CPU 和 GPU 上运行,使其速度更快,并且不会耗尽电脑的内存。

代码助手

图片

Zed 会在你输入时跟踪你的代码,这有助于实现突出显示、自动缩进、可搜索的大纲视图和轻松的代码选择等功能。它还使用语言服务器协议进行通信,可以实现自动完成建议、代码导航、错误检查和代码改进。

内置于 Discord 和 Slack + Google Docs

图片

好吧,我想子标题可能有点误导。我的意思是说,你将获得 Discord 和 Slack 功能链接频道,你可以在其中与团队沟通,还可以在会议期间编写代码。

同样,在 Discord 和 Slack 中,如果想在编辑器之外做一些事情,我也可以与其他人共享自己的屏幕。

它比使用 VS Code 和 discord 更好的是,并非你需要使用两个不同的应用程序,而是你需要导航到需要显示代码的代码库,这将非常耗时,而且不是我们花费时间的最佳方式。

使用 zed 可以跳转到队友的位置并跟踪他们的代码,然后切换角色,这样共享代码的人就可以跟踪他们正在检查的人士,这使得它比搜索或导航到某一行更容易、更快捷。

如果不是科学上网,算我没说。

CRDT 

CRDT 是一类最终一致的数据结构,允许数据在并发突变的情况下保持同步。

在 Zed 中,每个缓冲区默认都是一个 CRDT,这为多种协作形式提供了基础。它们也是多线程架构的关键组件,让我们可以更愉快地使用 Zed。

结语

Zed 还在发展,但Zed 不仅仅是一个编辑器,它展示了编程的未来,时尚的设计、对速度的关注以及对简化编码体验的承诺,相信会引起那些喜欢简单和高效开发者的共鸣。

作者:洛逸 

参考:

https://faun.pub/breaking-ties-with-vs-code-an-affair-with-zed-286594e0b902

https://medium.com/@cerebrovinny/zed-vs-vs-code-time-for-a-new-code-editor-era-03fd17d6ad61

评论