- PVSM.RU - https://www.pvsm.ru -

Авторы Electron признали его неудачным, написали новый фреймворк на Rust и представили новый редактор Zed

Три бывших разработчика (Nathan Sobo, Antonio Scandurra и Max Brunsfeld) редактора Atom и Nate Butler из Facebook вчера представили свой новый редактор Zed [1] над которым они работали последние несколько лет.

Основными идеями для редактора нового поколения они считают:

  • Максимально возможная скорость работы
  • Совместная работа в реальном времени
  • Средство текстовой коммуникации, встроенное в редактор
  • Эффективность разработчика за счет максимально полезного UI

Изначально разработчики попробовали написать ядро редактора на Rust и оставить Electron в качестве фронтенда. Этот проект назывался Xray [2], но GitHub отказались продолжать развитие проекта. Со временем, они поняли, что именно Electron является бутылочным горлышком для достижения желаемой производительности и решили написать свой графический фреймворк, использующий GPU для рендеринга.

Он называется GPUI и, по словам авторов, вдохновлен проектом Mozilla Webrender.

Electron был создан в 2012 и, для того времени, авторы считают это правильным выбором, так как их целью было создать кросс-платформенный редактор. К сожалению, ничего более подходящего, чем веб-технологии тогда не было. Разработка на С / C++ заняла бы слишком много времени и скорее всего закончилась бы неудачей проекта, к тому же, хотелось, что бы сторонние разработчики могли расширять редактор с помощью знакомых для многих JavaScript, HTML, и CSS.

Использование Rust позволило небольшой команде разработать продукт в срок, и они считают, что Zed не удалось бы создать с помощью других инструментов.

Редактор будет поддерживать Language Server Protocol, но также иметь мощную встроенную поддержку более 50 языков на основе Tree-Sitter [3] (используется GitHub).

Проект находится в стадии бета-тестирования, записаться можно по ссылке [4].

Примечание:
Авторы считают именно Electron (а не Atom) неудачной технологией, причем именно в данный момент времени. В ретроспективе наоборот — именно благодаря ему им удалось создать Atom и достичь успеха.

In the end, however, we reached the conclusion that the editor we wanted to use couldn't be built in a single-threaded scripting language. It was time to start over. Now we're back from the wilderness, this time with the knowledge and tools we need to execute without compromise.

Atom — бесплатный текстовый редактор для Linux, macOS, Windows с поддержкой плагинов, написанных на JavaScript, и встраиваемых под управлением Git. Atom основан на Electron.

Electron (ранее известен как atom shell) — фреймворк, разработанный GitHub. Позволяет разрабатывать нативные графические приложения для операционных систем с помощью веб-технологий, комбинируя возможности Node.js для работы с back-end и библиотеки веб-рендеринга Chromium. Был разработан в 2012 для создания редактора Atom.

Rust — мультипарадигмальный компилируемый язык программирования общего назначения. Ключевые приоритеты языка: безопасность, скорость и параллелизм.

Автор: Александр

Источник [5]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/atom/370523

Ссылки в тексте:

[1] Zed: https://zed.dev/

[2] Xray: https://github.com/atom-archive/xray

[3] Tree-Sitter: https://tree-sitter.github.io/tree-sitter/

[4] ссылке: https://zed.dev/community

[5] Источник: https://habr.com/ru/post/595897/?utm_source=habrahabr&utm_medium=rss&utm_campaign=595897