Explorando Zed, un editor de código fuente abierto escrito en Rust

Los editores de código se han convertido en una herramienta indispensable para los desarrolladores, permitiéndonos escribir, editar y colaborar en código eficientemente. Un nuevo contendiente se ha unido a la competencia de editores de código y promete revolucionar la forma de trabajar de los desarrolladores: Zed, un editor de código multijugador escrito íntegramente en Rust.

En este artículo, analizaremos en profundidad qué es exactamente el editor de código Zed, sus funciones y sus capacidades de colaboración. Por último, compararemos Zed con VS Code para ver cómo se comparan ambos editores de código. Profundicemos en el tema.

Table
  1. ¿Qué es el editor de código Zed?
  2. Características del editor de código Zed
    1. Integración de IA
    2. Marco GPUI
    3. Modo Vim
  3. Explorando las capacidades de colaboración y programación en pareja de Zed
    1. Agregar contactos
    2. Compartiendo proyectos
    3. Seguimiento de colaboradores
    4. Chats y canales
    5. Compartir pantalla
  4. Zed vs. VS Code: una comparación
    1. Extensibilidad
    2. Temas
    3. Experiencia del usuario
    4. Actuación
    5. Capacidades colaborativas
    6. Soporte multiplataforma
    7. Características
  5. Conclusión

¿Qué es el editor de código Zed?

Zed es un nuevo editor de código multijugador de código abierto escrito en Rust. Fue desarrollado por los creadores de Atom y Tree-sitter : Nathan Sobo, Antonio Scandurra y Max Brunsfeld. El equipo lanzó Zed a principios de 2023 y lo publicó en código abierto en 2024 .

Zed se distingue por su rendimiento ultrarrápido y sus innovadoras funciones colaborativas. Se posiciona como el editor de código más rápido del mercado y ofrece un rendimiento superior al de alternativas como VS Code , Sublime Text y CLion.

Dominar las encuestas de clientes: diseño, ejecución y análisis

La clave de la velocidad de Zed reside en su innovador marco de interfaz de usuario basado en GPU (GPUI). Este marco GPUI aprovecha la potencia de las unidades de procesamiento gráfico (GPU) modernas para rasterizar toda la ventana del editor, ofreciendo una fluidez y una capacidad de respuesta excepcionales.

Un aspecto importante a destacar sobre el editor de código Zed es que no solo ofrece un mayor rendimiento, sino que también proporciona una rica experiencia de codificación colaborativa, muy necesaria en el mundo actual, donde el trabajo remoto es prioritario.

Exploraremos más sobre las capacidades colaborativas de Zed más adelante en este artículo.

Características del editor de código Zed

Exploremos algunas de las características que ofrece Zed.

Mojo CSS vs. Tailwind: Cómo elegir el mejor framework CSS

Integración de IA

A continuación se muestra un desglose de las capacidades de IA de Zed:

  • Compatibilidad con GitHub Copilot : Copilot puede ofrecerte sugerencias basadas en IA en tiempo real. Sin embargo, Zed no es compatible con la función de chat de Copilot, y ahí es donde entran en juego Open AI y los modelos GPT.
  • Compatibilidad con Open AI LLM : Zed utiliza modelos GPT para su asistente de IA . Puedes pedirle al asistente que realice diversas tareas, como generar código, convertirlo de un lenguaje a otro y documentarlo. Marshall Bowers, miembro del equipo de Zed, escribió un artículo sobre la aplicación de la IA en Zed:

Marco GPUI

Como se mencionó anteriormente, el secreto de la velocidad del editor Zed reside en su interfaz de usuario basada en GPU (GPUI). Este marco aprovecha un nuevo enfoque para crear interfaces de usuario 2D, como la ventana del editor de código, para aplicaciones.

Las interfaces de usuario se renderizan tradicionalmente en la unidad central de procesamiento (CPU). Sin embargo, con GPUI, toda la ventana (incluyendo texto, gráficos, etc.) se rasteriza o se convierte a píxeles en la unidad de procesamiento gráfico (GPU), diseñada para gestionar las tareas de renderizado de gráficos con mayor eficiencia que las CPU.

Este enfoque da como resultado una entrega más rápida y fluida de píxeles a la pantalla y permite que la interfaz de usuario del editor de código se actualice y se redibuje más rápido.

Utilizar pruebas de concepto para un mejor diseño de productos

Modo Vim

Zed está dirigido a los desarrolladores que disfrutan usando Vim, ofreciendo un modo llamado ” Modo Vim “. El objetivo de este modo es familiarizar a los usuarios de Vim con Zed. Sin embargo, no será totalmente compatible con Vim, y Zed incorporará sus propias funciones cuando sea necesario.

¿Por qué Zed creó un modo Vim? Porque está escrito en Rust, y Vim es uno de los mejores editores de código para desarrolladores de Rust. Por lo tanto, crear un modo Vim facilita a los usuarios de Vim cambiar a Zed.

Zed proporciona enlaces de Vim en modo Vim y utiliza Neovim para ellos. Consulta la documentación para obtener sobre el modo Vim.

Explorando las capacidades de colaboración y programación en pareja de Zed

Una ventaja de Zed es que muchas de las funciones que VS Code ofrece como extensiones están integradas. La funcionalidad colaborativa es un ejemplo. Si bien la colaboración y el uso compartido de código están disponibles en VS Code a través de la extensión Live Share de Microsoft , es una función predefinida en Zed.

Getting Things Done (GTD): Un método para mejorar la productividad

Las capacidades colaborativas de Zed le permiten:

  • Agregar contactos
  • Comparte proyectos con ellos
  • Realizar un seguimiento de las actividades de los colaboradores en el editor
  • Conversa con tus compañeros de equipo a través de chats y canales.
  • Comparte tu pantalla

Exploremos estas características en detalle.

Agregar contactos

El primer paso para colaborar con otros es agregarlos como contactos. Antes de agregar a alguien como contacto, debe:

  1. Tener un editor Zed
  2. Iniciar sesión en el editor con su cuenta de GitHub. Esto es necesario porque buscarás el contacto con su nombre de usuario de GitHub.

Si bien el proceso de agregar contactos es sencillo, limita la experiencia colaborativa solo a los desarrolladores, ya que son los únicos que suelen usar estas herramientas:

Compartiendo proyectos

Después de agregar un contacto, puedes llamarlo haciendo clic en él. El contacto recibirá la llamada y, una vez que la acepte y se una, el proyecto se habrá compartido.



Asegúrate de colaborar y compartir proyectos únicamente con personas en quienes confíes, ya que compartir un proyecto les da acceso a tu sistema de archivos local:

En la captura de pantalla a continuación, puede ver los íconos de usuario en la parte superior izquierda, y el panel de la barra lateral de colaboración muestra las diferentes personas en una llamada:

Seguimiento de colaboradores

La experiencia de edición multicursor de Zed te permite rastrear a los colaboradores mediante sus cursores y avatares. Esto es especialmente útil cuando varios desarrolladores trabajan simultáneamente en un proyecto, ya que te permite saber quién está trabajando en qué de un vistazo.

Chats y canales

Otra función colaborativa que ofrece Zed es el chat. Puedes conversar con tus contactos dentro del editor de código. Los chats también incluyen audio, lo que te permite realizar llamadas de voz.

También están los canales de Zed . Son similares a los canales de Slack y funcionan como oficinas virtuales para equipos. Puedes configurar canales para diferentes temas, ver quién está presente en cada canal, chatear con ellos e incluso crear notas compartidas para un canal. Esto te ayuda a mantener tus conversaciones organizadas:

Tenga en cuenta que la función de canales es gratuita actualmente. Sin embargo, el equipo de Zed planea convertirla en una función de pago después de su fase beta.

Compartir pantalla

Zed también te permite compartir tu pantalla con otros. Gracias a esta función, ya no necesitas salir del editor para conectarte a una llamada de Google Meet, Zoom o Teams. Ahora puedes colaborar con tus compañeros de equipo directamente desde el editor:

Zed vs. VS Code: una comparación

Exploremos cómo se comparan Zed y VS Code.

Extensibilidad

Zed lanzó recientemente compatibilidad con su registro de extensiones . Antes de este lanzamiento, los plugins y extensiones no estaban disponibles en Zed. Sin embargo, con este lanzamiento, los desarrolladores ahora pueden crear sus propias extensiones y compartirlas con los usuarios de Zed.

Puede explorar todas las extensiones disponibles ejecutándolas zed: extensionsen la paleta de comandos.

Añadir extensiones es crucial para el éxito de Zed y podría impulsar su adopción. Sin embargo, aún le queda un largo camino por recorrer antes de alcanzar a VS Code, que cuenta con decenas de miles de extensiones. En cualquier caso, Zed va por buen camino, aunque aún le queda camino por recorrer.

Temas

Tanto Zed como VS Code ofrecen temas claros y oscuros. Sin embargo, existen dos diferencias principales entre estos editores de código en este sentido:

  • Zed no permite crear temas propios. Sin embargo, VS Code permite crearlos e incluso compartirlos con otros a través del mercado de extensiones.
  • Actualmente, Zed ofrece nueve grupos de temas , mientras que hay cientos de temas para elegir en el mercado de extensiones de VS Code.

Aunque Zed ofrece menos temas que VS Code, ofrece una buena variedad de temas claros y oscuros . Por lo tanto, esto no debería ser un impedimento, a menos que cambies de tema con frecuencia y prefieras tener una amplia variedad para elegir.

Experiencia del usuario

Existen algunas diferencias notables entre Zed y VS Code con respecto a la experiencia del usuario:

  • VS Code te permite arrastrar pestañas del editor desde su ventana actual a una nueva ventana, mientras que Zed no.
  • En VS Code, al hacer zoom, se amplía toda la interfaz de usuario. Sin embargo, Zed solo amplía el editor y mantiene el resto de la interfaz (la barra lateral y la terminal) con su nivel de zoom predeterminado.
  • Al usar Zed, el sistema no responde al hacer clic en las imágenes del árbol de archivos. Sin embargo, al hacer clic en una imagen en VS Code, esta se abre en una nueva pestaña, lo que permite verla.

Si bien estas diferencias pueden no ser un factor decisivo, es importante tomarlas en cuenta.

Actuación

Los datos del equipo de Zed revelan que el editor de código Zed ofrece un mayor rendimiento que VS Code. De hecho, Zed es ocho veces más rápido que otros editores. Algunos argumentarían que esta ligera mejora en velocidad y tiempo de respuesta es insignificante para el ojo humano y el usuario promedio. En cualquier caso, Zed es el número uno en velocidad:

Afortunadamente, no tenemos que confiar solo en la palabra del equipo de Zed. Un experimento realizado por el educador tecnológico y desarrollador web Alex Ziskind reveló que Zed procesa las pulsaciones de teclas más rápido que VS Code.

El experimento de Ziskind demostró que Zed procesaba las pulsaciones de teclas en 56 ms, mientras que VS Code lo hacía en 72 ms. Vea su vídeo de YouTube para ver los experimentos que realizó.

Capacidades colaborativas

Tanto Zed como VS Code ofrecen funciones colaborativas que permiten a los equipos de desarrollo trabajar juntos de forma remota. En cuanto a la colaboración, existen dos diferencias principales entre Zed y VS Code:

  • Las funciones colaborativas de Zed están integradas, mientras que VS Code se basa en la extensión Live Share para la colaboración.
  • Zed ofrece llamadas de audio, servidores de chat y funcionalidad para compartir pantalla, mientras que VS Code no.

Como hemos explorado con Zed, puedes:

  • Agregar contactos
  • Comparte tu pantalla
  • Realizar un seguimiento de las actividades de un colaborador
  • Chatea con otros desarrolladores

Con la extensión Live Share de VS Code, puedes:

  • Invitar a colaboradores
  • Compartir y colaborar en proyectos
  • Realizar un seguimiento de las actividades de un colaborador

Entonces, aunque ambos editores de código proporcionan herramientas de colaboración, los de Zed están integrados y son más extensos.

Soporte multiplataforma

Al momento de escribir este artículo, una de las mayores limitaciones de Zed es que solo está disponible en macOS. Sin embargo, el equipo de Zed planea ofrecer compatibilidad con Windows y Linux en el futuro. Por otro lado, VS Code es compatible con todas las plataformas.

Los datos de Statista muestran que, en 2022, los desarrolladores de software utilizan Windows más que cualquier otro sistema operativo. Esto significa que la compatibilidad con otras plataformas será clave para que Zed alcance una alta adopción y uso.

Características

A continuación se muestra una tabla que muestra las diferentes funciones que Zed y VS Code ofrecen y no ofrecen:

Característica Zed Código VS
Temas Sí, aunque limitado Cientos de temas disponibles
Extensiones
Soporte de GitHub Copilot
Resaltado de sintaxis
Terminal
Panel de colaboración y chat
Soporte multiplataforma
Código abierto
Modo VIM
Admite varios idiomas
Integración de Git
Depurador

Conclusión

Abordemos el gran problema: Zed vs. VS Code: ¿cuál deberías usar? Como dijo un sabio desarrollador sénior: «Depende». Pero, en realidad, depende de diferentes factores, entre ellos:

  • Si necesitas o no plugins : Una de las principales ventajas de VS Code es su amplio ecosistema de plugins. Puedes encontrar plugins para diversos casos de uso, lo que ayuda a agilizar el proceso de desarrollo. Actualmente, Zed ofrece muy pocos plugins y no permite a los desarrolladores crear los suyos propios. Si no te importa o no necesitas plugins, usar Zed no será un problema.
  • Independientemente de si utilizas o no una Apple PC : dado que Zed solo es compatible con Apple PC, los usuarios de Linux y Windows no pueden usarlo.
  • Ya sea que trabajes solo o colabores con otros desarrolladores , esta podría no ser la razón más convincente para migrar a Zed, ya que la extensión Live Share de VS Code facilita la programación colaborativa. Sin embargo, algunos desarrolladores podrían considerar migrar a Zed, o al menos explorarlo, debido a su experiencia colaborativa integrada.

En cuanto a la adopción, predigo que Zed enfrentará los siguientes desafíos importantes:

  • Muchos desarrolladores y equipos están acostumbrados a VS Code y es posible que no cambien a un nuevo editor de código a menos que proporcione varios beneficios y características que VS Code no ofrece.
  • La falta de soporte multiplataforma definitivamente afectará la adopción de Zed.

Zed es un excelente editor de código para el desarrollo colaborativo. Me gusta que se centre en mejorar la velocidad y el rendimiento, a la vez que ofrece una interfaz de programación minimalista. Si ofrece las funciones que necesitas y te interesa explorar sus posibilidades, vale la pena probarlo.

¿Ya probaste Zed? Deja tus comentarios abajo con tus opiniones o preguntas.

Depurar aplicaciones Rust puede ser difícil, especialmente cuando los usuarios experimentan problemas difíciles de reproducir. Si te interesa supervisar y monitorizar el rendimiento de tus aplicaciones Rust, detectar errores automáticamente y monitorizar las solicitudes de red lentas y el tiempo de carga, prueba LogRocket .

Modernice su forma de depurar sus aplicaciones Rust: comience a monitorearlas de forma gratuita .

Si quieres conocer otros artículos parecidos a Explorando Zed, un editor de código fuente abierto escrito en Rust puedes visitar la categoría Guias.

Entradas Relacionadas