В дополнение к пунктам из предыдущих ответов, стоит прояснить различия между этими двумя продуктами с точки зрения выбора, сделанного при их разработке.
Sublime - это двоичная компиляция для платформы. Его ядро написано на C / C ++, а ряд его функций реализован на Python, который также является языком для его расширения. Atom написан на Node.js / Coffeescript и работает под управлением webkit, а Coffeescript является языком расширения. Хотя Sublime схожи в UI и UX, он работает значительно лучше, чем Atom, особенно в «тяжелой работе», такой как работа с большими файлами, сложные SnR или плагины, которые выполняют тяжелую обработку файлов / буферов. Хотя я ожидаю улучшения в Atom по мере его развития, выбор дизайна и платформы ограничивает производительность.
«Закрытая» часть Sublime включает в себя API и пользовательский интерфейс. Помимо скинов / тем и колоризаторов, API в настоящее время затрудняет изменение других аспектов пользовательского интерфейса. Например, плагины Sublime не могут взаимодействовать с боковой панелью, контролировать или рисовать в области редактирования (за исключением некоторых ограниченных способов, например, в канаве) или манипулировать строкой состояния за пределами основного текста. «Закрытая» часть Atom на данный момент неизвестна, но я чувствую, что она меньше.У Atom более богатый API (хотя в настоящее время он плохо документирован), цель которого - обеспечить больший контроль над своим пользовательским интерфейсом. Тесная связь с webkit предлагает многочисленные возможности для улучшения пользовательского интерфейса, которые в настоящее время невозможны в Sublime. Однако расширения Sublime работают ближе к нативным, поэтому в Sublime возможны те, которые выполняют интенсивные вычисления, высокоповторные или сложные текстовые манипуляции в больших буферах.
Поскольку больше Atom будет открыто, Github с открытым исходным кодом Atom 6 мая. В результате, вероятно, что поддержка и темпы развития будут быстрыми. В отличие от этого, в последнее время развитие Sublime значительно замедлилось, но оно не умерло . В частности, есть ряд ошибок, многие из которых довольно тривиальны, которые не были исправлены разработчиком. Никто не показывает imo, но если вы хотите что-то в быстрой разработке с регулярным исправлением ошибок и улучшениями, Sublime расстроится. Тем не менее, устанавливаемые пакеты Atom для Windows и Linux еще не выпущены, и активность в кодовой базе, кажется, остыла за несколько недель до и после объявления, согласно статистике Github.
С точки зрения функций IDE, с точки зрения webdev Atom позволит расширять возможности до таких продуктов, как Webstorm, хотя ни один из них еще не появился. Еще неизвестно, как Atom будет работать с такими «тяжелыми» расширениями, поскольку редактор изначально чувствует себя вялым. Из-за ограничений в API и отсутствия базового веб-набора Sublime не разрешит этот уровень настройки пользовательского интерфейса, хотя разработчик может расширить API для поддержки таких функций в будущем. Опять же, базовая производительность Sublime учитывает то, что связано с вычислительной нагрузкой; Индексирование символов ST3 является примером, который хорошо работает даже в больших проектах. И хотя пользовательский интерфейс Atom, безусловно, смоделирован на Sublime, некоторые усовершенствования заметно отсутствуют, такие как Sublime '
Я считаю эти продукты взаимодополняющими. Тот факт, что они имеют похожие визуальные эффекты и нажатия клавиш, только добавляет к этому факту. Будут ситуации, когда использование того или иного имеет свои преимущества. В настоящее время Sublime является зрелым продуктом с паритетом функций на всех трех платформах и богатым набором плагинов. Атом - это новый ребенок, чьи черты будут быстро расти; пока он не чувствует готовности к производству, и есть проблемы с производительностью.
[Обновление / редактирование: 18 мая 2015 г.]
Примечание об улучшениях в этих двух редакторах со времени написания вышеупомянутого.
В дополнение к исправлениям ошибок и улучшениям в его ядре, в Atom наблюдается быстрый рост числа сторонних расширений, причем autocomplete-plus становится частью стандартного дистрибутива Atom. Качество расширения варьируется в широких пределах, и особое раздражение вызывает частота, с которой нестабильные сторонние пакеты могут вызывать сбой редактора. В течение последнего года Atom перешел на использование React путем переноса операций перекомпоновки / перерисовки на графический процессор по соображениям производительности, значительно улучшая отзывчивость пользовательского интерфейса для типичных действий редактирования (прокрутка, перемещение курсора и т. Д.). Хотя это заметно улучшило работу редактора, оно все еще кажется громоздким для задач, интенсивно использующих процессор, как описано выше, и все еще медленно запускается. Помимо улучшений производительности, Atom чувствует себя значительно более стабильным по всем направлениям.
Разработка Sublime возобновилась с января 2015 года, с исправлениями ошибок, некоторыми незначительными новыми функциями (API всплывающей подсказки, улучшения системы сборки) и крупной разработкой в виде нового определения .sublime-синтаксиса на основе yaml (чтобы в конечном итоге заменить старый xml .tmLanguage). Вместе с пользовательским модулем регулярных выражений, который заменяет Onigurama, новая система предлагает больше возможностей для точного сопоставления регулярных выражений, значительно быстрее (до 4х) и может выполнять несколько совпадений параллельно. Помимо цветного синтаксиса Sublime использует эти компоненты для индексации символов (определение перехода и т. Д.) И других функций, учитывающих язык. В дополнение к дальнейшему ускорению Sublime, особенно для больших файлов, эта функция должна раскрыть потенциал для таких специфичных для языка функций, как рефакторинг кода и т. Д. Будут обещаны дальнейшие «большие разработки»,