La Eclipse Foundation wydała publikację pierwsza stabilna wersja edytora kodu „Eclipse Theia 1.0Który jest zaprojektowane jako alternatywa naprawdę otwórz do projektu Visual Studio Code.
Początkowo edytor jest rozwijany z myślą o pełnym wykorzystaniu obu w postaci aplikacji desktopowej do uruchomienia w chmurze z dostępem przez przeglądarkę internetową. Theia to rozszerzalna platforma opracowanie wielojęzycznych środowisk programistycznych (IDE) zintegrowanych z komputerami stacjonarnymi i chmurą z technologiami internetowymi nowej generacji, które umożliwiają programistom, organizacjom i dostawcom tworzenie nowych, rozszerzalnych środowisk programistycznych.
Pierwsi współautorzy i użytkownicy z wielu różnych branż i aplikacji obejmują firmy, takie jak ARM, Arduino, EclipseSource, Ericsson, Gitpod, Google Cloud, IBM, Red Hat, SAP i TypeFox.
Kod jest napisany w języku TypeScript i rozpowszechniany na bezpłatnej licencji EPLv2. Projekt powstaje przy współudziale IBM, Red Hat, Google, ARM, Ericsson, SAP i Arduino.
Informacje o Eclipse Theia 1.0
Edytor jest zbudowany w oparciu o architekturę frontend / backend, co oznacza uruchomienie dwóch procesów, z których jeden jest odpowiedzialny za reprezentowanie interfejsu, a drugi za wewnętrzną logikę.
Procesy komunikują się za pomocą protokołu HTTP przy użyciu JSON-RPC przez WebSockets lub REST API. Serwer korzysta z platformy Node.js i podczas pracy w sieci WWWdziała na serwerze zewnętrznym, a interfejs do interfejsu jest ładowany w przeglądarce.
W przypadku aplikacji desktopowej oba procesy są uruchamiane lokalnie, a platforma Electron służy do tworzenia samowystarczalnej aplikacji.
Poza tym, edytor ma wsparcie dla programowania w JavaScript, Java, Python i innych językach dla których istnieją sterowniki serwera oparte na LSP (Language Server Protocol), które zajmują się operacjami związanymi z analizą semantyki języka.
Korzystanie z LSP pozwala na użycie ponad 60 istniejących kontrolerów przygotowany dla edytorów Visual Studio Code, Nuclide i Atom, które również wykorzystują LSP.
Z jego głównych cech wyróżniają się następujące:
- Używanie wspólnej bazy kodu do tworzenia opcji dla komputerów stacjonarnych i sieci Web.
- Theia jest nadzorowana przez Eclipse Foundation, która zapewnia neutralną platformę niezależną od indywidualnych decyzji firmy i działa w interesie społeczności.
- Projekt jest zaprojektowany w możliwie najbardziej modułowy sposób, pozwala na rozbudowę lub zmianę dowolnej funkcjonalności poprzez wtyczki.
- Możliwe jest tworzenie produktów podobnych do IDE opartych na Theia, podłączając niezbędne wtyczki, wymieniając je w pliku package.json.
- Obsługa protokołu VS Code Extension, który umożliwia łączenie rozszerzeń opracowanych dla programu Visual Studio Code.
- Pełny emulator terminala, który automatycznie aktualizuje połączenie w przypadku ponownego załadowania strony w przeglądarce bez utraty pełnej historii pracy.
- Elastyczny projekt elementów interfejsu. Obudowa wyświetlacza oparta jest na frameworku PhosphorJS, który umożliwia dowolne przesuwanie bloków (można ukrywać panele, zmieniać rozmiar bloków i zamieniać je).
Kluczowe różnice w programie Visual Studio Code to: bardziej modułowa architektura, która zapewnia więcej opcji modyfikacji; wstępna orientacja na uruchomienie nie tylko w systemie lokalnym, ale także w chmurze; rozwój w neutralnej witrynie.
Warto zauważyć, że w pełni otwarta wersja edytora Visual Studio Code rozwija również projekt VSCodium, który zawiera tylko bezpłatne komponenty, jest wolny od wiązania marki Microsoft, a kod telemetryczny jest usuwany.
Jak zainstalować Eclipse Theia w systemie Linux?
Dla tych, którzy są zainteresowani możliwością zainstalowania tego IDE w swoim systemie, będą mogli to zrobić przy pomocy Dockera. Dlatego konieczne jest zainstalowanie Dockera w systemie.
Obraz Theii możemy uzyskać wpisując następujące polecenie:
docker run -it --init -p 3000:3000 -v "$(pwd):/home/project:cached" theiaide/theia:next
I gotowy.
Wreszcie, jeśli chcesz dowiedzieć się więcej o tym IDE, możesz sprawdzić szczegóły w poniższym linku.
A link?