Oprócz punktów z wcześniejszych odpowiedzi, warto wyjaśnić różnice między tymi dwoma produktami z perspektywy wyborów dokonanych podczas ich rozwoju.
Sublime jest skompilowany binarnie dla platformy. Jego rdzeń jest napisany w C / C ++, a wiele jego funkcji jest zaimplementowanych w Pythonie, który jest także językiem używanym do jego rozszerzania. Atom jest napisany w Node.js / Coffeescript i działa pod webkitem, przy czym Coffeescript jest językiem rozszerzenia. Chociaż podobnie w UI i UX, Sublime działa znacznie lepiej niż Atom, szczególnie w „ciężkim podnoszeniu”, takim jak praca z dużymi plikami, złożonym SnR lub wtyczkami, które intensywnie przetwarzają pliki / bufory. Chociaż oczekuję ulepszeń w miarę dojrzewania Atomu, wybór projektu i platformy ogranicza wydajność.
„Zamknięta” część Sublime obejmuje API i interfejs użytkownika. Oprócz skórek / motywów i kolorów, interfejs API utrudnia obecnie modyfikowanie innych aspektów interfejsu użytkownika. Na przykład wtyczki Sublime nie mogą wchodzić w interakcje z paskiem bocznym, kontrolować ani rysować w obszarze edycji (z wyjątkiem pewnych ograniczonych sposobów, np. W rynnie) ani manipulować paskiem stanu poza zwykłym tekstem. „Zamknięta” część atomu jest obecnie nieznana, ale mam wrażenie, że jest mniejsza.Atom ma bogatszy interfejs API (choć obecnie słabo udokumentowany), którego celem projektowym jest umożliwienie większej kontroli nad interfejsem użytkownika. Ścisłe połączenie z webkitem oferuje liczne możliwości ulepszenia funkcji interfejsu użytkownika, które obecnie nie są możliwe w Sublime. Jednak rozszerzenia Sublime działają bliżej natywnych, więc te, które wykonują intensywne obliczenia, wysoce powtarzalne lub złożone manipulacje tekstem w dużych buforach, są możliwe w Sublime.
Ponieważ więcej Atomu będzie otwartych, Github otworzy Atom 6 maja. W rezultacie prawdopodobne jest, że wsparcie i tempo rozwoju będą szybkie. Natomiast rozwój Sublime znacznie się spowolnił - ale nie jest martwy . W szczególności istnieje wiele błędów, wiele dość trywialnych, które nie zostały naprawione przez programistę. Żadne z nich nie powstrzymuje imo, ale jeśli chcesz czegoś w szybkim rozwoju z regularnymi poprawkami i ulepszeniami, Sublime będzie frustrować. To powiedziawszy, instalowalne pakiety Atom dla Windows i Linuksa jeszcze się nie ukazały, a aktywność w bazie kodu wydaje się ostygnąć w tygodniach przed ogłoszeniem i od jego ogłoszenia, zgodnie ze statystykami Githuba.
Jeśli chodzi o funkcje IDE, z perspektywy webdev Atom pozwoli na rozszerzenia aż do zbliżania się do produktów takich jak Webstorm, choć żadne jeszcze się nie pojawiło. Zobaczymy, jak Atom poradzi sobie z tak „ciężkimi” rozszerzeniami, ponieważ edytor natywnie czuje się powolny. Ze względu na ograniczenia w interfejsie API i brak bazowego pakietu internetowego, Sublime nie pozwoli na taki poziom dostosowania interfejsu użytkownika, chociaż deweloper może rozszerzyć interfejs API w celu obsługi takich funkcji w przyszłości. Ponownie, podstawowa wydajność Sublime pozwala na rzeczy, które wymagają obliczeniowego pomruku; Indeksowanie symboli ST3 jest przykładem, który sprawdza się nawet przy dużych projektach. I chociaż interfejs użytkownika Atom jest z pewnością wzorowany na Sublime, zauważalnie brakuje niektórych udoskonaleń, takich jak Sublime ”
Widzę te produkty jako komplementarne. Fakt, że mają one podobną grafikę i naciśnięcia klawiszy, tylko to dodaje. Będą sytuacje, w których użycie któregokolwiek z nich ma zalety. Obecnie Sublime jest dojrzałym produktem z parytetem funkcji na wszystkich trzech platformach i bogatym zestawem wtyczek. Atom jest nowym dzieckiem, którego cechy będą szybko rosły; produkcja nie jest jeszcze gotowa i istnieją obawy dotyczące wydajności.
[Aktualizacja / edycja: 18 maja 2015 r.]
Uwaga na temat ulepszeń tych dwóch edytorów od czasu napisania powyższego.
Oprócz poprawek błędów i ulepszeń rdzenia, Atom doświadczył szybkiego wzrostu rozszerzeń innych firm, a autouzupełnianie plus stało się częścią standardowej dystrybucji Atom. Jakość rozszerzenia jest bardzo zróżnicowana, a szczególną irytacją jest częstotliwość, z jaką niestabilne pakiety stron trzecich mogą spowodować awarię edytora. W ciągu ostatniego roku Atom przeniósł się do używania React poprzez przeniesienie działania odświeżania / odświeżania do GPU ze względów wydajnościowych, znacznie poprawiając reakcję interfejsu użytkownika na typowe czynności edycyjne (przewijanie, ruch kursora itp.). Chociaż znacznie poprawiło to działanie edytora, nadal jest niewygodne w przypadku zadań intensywnie wykorzystujących procesor, jak opisano powyżej, i nadal jest powolne podczas uruchamiania. Oprócz ulepszeń wydajności, Atom czuje się znacznie bardziej stabilny na całej planszy.
Rozwój Sublime ponownie wzrósł od stycznia 2015 r., Wraz z poprawkami błędów, kilkoma drobnymi nowymi funkcjami (interfejs API podpowiedzi, ulepszenia systemu kompilacji) oraz znaczącym postępem w postaci nowej definicji .sublime opartej na yaml (aby ostatecznie zastąpić starą xml .tmLanguage). Wraz z niestandardowym silnikiem wyrażeń regularnych, który zastępuje Onigurama, nowy system oferuje większy potencjał precyzyjnego dopasowania wyrażeń regularnych, jest znacznie szybszy (do 4x) i może wykonywać wiele dopasowań równolegle. Oprócz składni kolorowania, Sublime używa tych komponentów do indeksowania symboli (definicja goto itp.) I innych funkcji rozpoznających język. Oprócz dalszego przyspieszania Sublime, szczególnie w przypadku dużych plików, ta funkcja powinna otworzyć potencjał wydajnych funkcji specyficznych dla języka, takich jak refaktoryzacja kodu itp. Obiecuje się dalsze „duże zmiany”,