Zaćmienie Che - Eclipse Che

Zaćmienie Che
Eclipse Che - Zrzut ekranu IDE No Markers.PNG
IDE Eclipse Che
Deweloper(zy) Fundacja Eclipse
Pierwsze wydanie 4.0 / 29 marca 2016 ; 5 lat temu ( 29.03.2016 )
Wersja stabilna
7.28.1 / 1 kwietnia 2021 ; 6 miesięcy temu ( 2021-04-01 )
Magazyn github .com /eclipse /che
System operacyjny Wieloplatformowy : Linux , Mac OS X , Solaris , Windows
Platforma Java SE
Rodzaj Narzędzie programistyczne , Zintegrowane środowisko programistyczne (IDE)
Licencja Od 6.9.0: EPL-2.0
Do 6.8.0: EPL-1.0
Strona internetowa www .eclipse .org / che

Eclipse Che to otwarty , oparty na Javie serwer obszaru roboczego dla programistów i IDE Online ( zintegrowane środowisko programistyczne ). Zawiera platformę zdalnego programowania dla wielu użytkowników. Serwer obszaru roboczego jest wyposażony w elastyczną usługę sieciową RESTful . Zawiera również SDK do tworzenia wtyczek dla języków, frameworków lub narzędzi. Eclipse Che to projekt najwyższego poziomu Eclipse Cloud Development (ECD), który umożliwia wkład społeczności użytkowników.

Historia

Eclipse Che zostało po raz pierwszy ogłoszone w październiku 2014 roku. Jeden z jego głównych współpracowników, Codenvy, dostarczył stos technologiczny, na którym opiera się Che. Pomysł na oparte na chmurze IDE i jego rozwój pojawił się na początku 2009 roku przez platformę eXo. Po trzech latach ciągłego rozwoju projekt zebrał 9 milionów dolarów i rozwinął samodzielny biznes o nazwie Codenvy. Po ogłoszeniu projektu Che obejmującego darowiznę własności intelektualnej i udział w projekcie Eclipse Cloud Development rozpoczął się rozwój projektu Che. Sam Codenvy jest dziś produktem komercyjnym zbudowanym na bazie Eclipse Che. Obecnie jest wielu współpracowników oprócz Codenvy, takich jak IBM , Red Hat , Samsung , SAP , Microsoft , Intuit , eXo Platform, WSO2 i Serli, a także wielu współpracowników open source z Brazylii, Kanady, Chin, Francji, Indii, Rosji, Sri Lanka, Ukraina i Stany Zjednoczone.

Koncesjonowanie

Eclipse Che jest wydany na licencji Eclipse Public License, która jest podobna do Common Public License .

Nazwa

Nazwa „Che” wynika z faktu, że większość prac budowlanych odbywa się w Czerkasach (Ukraina).

Obsługiwane języki i frameworki

Domyślnie obsługiwane są następujące języki programowania i frameworki:

Kategoria Wsparcie
Języki C, C++, C#, F#, GO, Java, JavaScript, PHP, Python, Ruby, SQL, TypeScript
Ramy AngularJS, Docker, .Net 2.0, Kubernetes, OpenShift, Yeoman,
Budowniczowie Mrówka, Altana, Grunt, Gulp, Maven, Npm
Narzędzia Git, Orion, SSH, Subversion

Zbliżać się

Sam Che jest serwerem obszaru roboczego działającym na serwerze aplikacji. Che zapewnia zintegrowane IDE, z którego można korzystać za pośrednictwem przeglądarki. Po początkowym załadowaniu IDE zapewnia dynamiczny interfejs użytkownika zawierający znane komponenty, takie jak kreatory, edytory, paski narzędzi i wiele innych. Użytkownik ma możliwość tworzenia obszarów roboczych, projektów, środowisk, maszyn i wielu innych modułów, które są potrzebne do zbudowania projektu od podstaw. Komunikacja między interfejsem użytkownika a serwerem odbywa się za pomocą RESTful API, które współdziałają z tzw. Workspace Master. Jeden obszar roboczy może zawierać zero lub więcej projektów i musi zawierać co najmniej jedno środowisko, które samo zawiera co najmniej jedną maszynę. Maszyna to środowisko wykonawcze, w którym zainstalowano niezbędne oprogramowanie. Jeśli użytkownik doda na przykład projekt, który używa Apache Maven, Workspace Master zainstaluje Mavena na dowolnym komputerze w obszarze roboczym, aby zapewnić możliwość wykonania projektu na każdym komputerze. Che zawiera kilka predefiniowanych stosów technologii, aby szybko skonfigurować nową maszynę. Aby zapewnić wysoką elastyczność i rozszerzalność, użytkownik może również zdefiniować niestandardowe stosy technologiczne, które można wykorzystać do konfiguracji nowych maszyn.

Przepływ pracy, który ma Eclipse Che podczas otwierania IDE i wprowadzania zmian w obszarze roboczym lub projekcie.

Stos technologiczny

Eclipse Che to aplikacja Java, która domyślnie działa na serwerze Apache Tomcat . Środowisko IDE używane w przeglądarce zostało napisane przy użyciu Google Web Toolkit . Che jest wysoce rozszerzalny, ponieważ dostarcza SDK, który może być używany do tworzenia nowych wtyczek, które mogą być dołączane do tak zwanych zestawów. Później zestaw może być wykonywany jako samodzielna aplikacja serwerowa lub klient stacjonarny przy użyciu dołączonych instalatorów. Maszyny, na których można realizować projekty, są zarządzane przez Docker .

Użytkownicy

Che dzieli swoich użytkowników na trzy grupy. Deweloperzy są rzeczywistymi użytkownikami IDE. Może to być dostęp do zdalnego serwera Che lub uruchomienie lokalnej instancji Che. Właściciele produktów mogą używać Che do udostępniania obszarów roboczych na żądanie. Dostawcy wtyczek mogą tworzyć wtyczki IDE po stronie klienta lub wtyczki menedżera obszaru roboczego po stronie serwera.

Cechy

Eclipse Che oferuje wiele nowych funkcji i elastyczności:

  • Przenośne obszary robocze: każdy obszar roboczy ma własną konfigurację, którą można łatwo utrwalić, przenieść i zintegrować z innymi instancjami Eclipse Che
  • Obrazy Docker: Każdy obszar roboczy zawiera tzw. maszyny, które służą do wykonywania projektów. Każda maszyna może mieć zainstalowane różne technologie i jest zarządzana przez Docker .
  • Obsługa infrastruktury OpenShift: Uruchom Che na OpenShift
  • Agenci obszaru roboczego: Każdy komputer zawiera agentów obszaru roboczego, którzy zapewniają użytkownikowi usługi, takie jak dostęp SSH, monitorowanie i zdalne debugowanie.
  • Migawki obszaru roboczego: Obszary robocze są domyślnie przejściowe. Oznacza to, że stan środowiska prawdopodobnie nie będzie taki sam po ponownym uruchomieniu obszaru roboczego. Korzystając z migawek obszaru roboczego, stan obszaru roboczego można utrwalić i ponownie uruchomić później.
  • Wielu użytkowników i wielu dzierżawców: Setki programistów lub użytkowników może zalogować się do Che i współpracować. Co jest często wymagane w przypadku największych zespołów i przedsiębiorstw.
  • Wspólne obszary robocze: Jeśli środowisko Eclipse Che jest hostowane jako serwer obszaru roboczego, dostęp do niego może uzyskać wielu użytkowników i zespoły. Każdy użytkownik może z łatwością stworzyć tę samą aplikację bez konieczności instalowania oprogramowania.
  • Wizualizacja Git: Pliki zarówno w eksploratorze projektów, jak i na kartach edytora mogą być kolorowane w zależności od ich stanu Git.
  • Obszary robocze zgodne z REST: Komunikacja między środowiskiem IDE przeglądarki a menedżerem obszaru roboczego odbywa się za pomocą interfejsów API zgodnych z REST, które udostępnia menedżer obszaru roboczego.
  • Debuger: poruszaj się po wątku kodu, konfiguracji warunków i zawieszaj zasady w punktach przerwania. Co pozwala diagnozować i rozwiązywać wyzwania
  • DevOps: Deweloperzy mogą zobaczyć i monitorować stan maszyny za pomocą IDE.
  • Plug-In Framework: Dostarczając SDK, aby umożliwić tworzenie niestandardowych wtyczek, Eclipse Che zyskuje wysoką rozszerzalność.
  • Open-Source: Eclipse Che było rozwijane przez ponad cztery lata przez wielu współpracowników z całego świata.

skalowanie

Ponieważ Che jest aplikacją serwerową, może mieć do niej dostęp wielu programistów jednocześnie. Każdy programista może połączyć się z tym samym obszarem roboczym za pomocą IDE przeglądarki. W tej chwili Eclipse „Che implementuje politykę ostatniego zapisu-wygrywa, gdy wielu użytkowników modyfikuje ten sam plik”. W przyszłej wersji planowane jest włączenie wizualizacji z wieloma kursorami, aby umożliwić wspólną edycję jednego pliku przez wielu użytkowników. Obszary robocze mogą być bardzo duże, ponieważ obszar roboczy może zawierać wiele maszyn. Jeśli pojedynczy host już nie wystarcza, zaleca się zapewnienie własnej instancji Che dla każdego użytkownika lub grupy użytkowników. Oznacza to, że możesz mieć wiele serwerów działających na Che w tym samym ekosystemie. Codenvy oferuje również skalowalny ekosystem, który można zainstalować na żądanie lub używać jako SaaS. W przyszłych wydaniach planowane jest również włączenie zdalnych kontenerów Docker, aby użytkownicy nie musieli mieć wszystkich kontenerów uruchomionych na tym samym hoście.

Dalsza lektura

Bibliografia

Zewnętrzne linki