Programovanie

Vystrelenie z cloudu IDE: AWS Cloud9 vs. Eclipse Che vs. Eclipse Theia

Priviesť nového vývojára na programovací projekt s mnohými závislosťami môže byť niekedy nočnou morou. Videl som extrémny prípad, keď sa spoločnosť nakoniec vzdala a kúpila vývojárovi nový počítač po mesiaci problémov, ktoré sa snažili nakonfigurovať jeho starý. Bežnejšie môže nastavenie nového vývojového prostredia pre nového vývojára trvať tri dni až dva týždne.

Tento problém je jednou z motivácií pre webové vývojárske pracovné priestory. Ďalšou motiváciou je, že stroje na miestny vývoj potrebujú značné zdroje CPU a RAM, čo zvyšuje cenu hardvéru; tieto zdroje umožňujú vývojárovi stavať projekt rýchlo. Počítačom umožňujúcim prístup k webovým pracovným priestorom sa pri miestnom vývoji môže vyhnúť hardvér nižšej triedy ako počítače.

Ďalšou výhodou je, že webové pracovné priestory pre vývojárov môžu centralizovať a štandardizovať konfiguráciu. Koľkokrát ste počuli „Funguje to na mojom počítači“ v reakcii na hlásenie chyby? Štandardizované prostredia môžu tento problém eliminovať.

V tomto článku sa budem venovať trom cloudovým IDE, ktoré poskytujú webové pracovné priestory pre vývojárov. Dva z nich - Eclipse Theia a Eclipse Che - sú pomerne čerstvé projekty s otvoreným zdrojovým kódom, ktoré v súčasnosti zastrešuje Nadácia Eclipse. Tretí - AWS Cloud9 - je starší produkt, ktorý teraz vlastní a integruje s webovými službami Amazon.

Zatmenie Theia

Eclipse Theia je projekt typu open-source, ktorý poskytuje skúsenosti s vývojom kódu Visual Studio Code v prehliadači; môže bežať aj na pracovnej ploche v prostredí Electron. Theia sa spolieha na jazykový serverový protokol Visual Studio Code, ktorý poskytuje jazykové dokončenie kódu a ďalšie funkcie, ktoré očakávame od moderného editora kódu.

Pretože môže využívať výhody jazykových serverov napísaných pre Visual Studio Code, Theia má prístup k viac ako 60 dostupným jazykovým serverom vrátane JavaScriptu, Javy, Pythonu a TypeScript. Theia tiež podporuje protokol adaptéra na ladenie.

Samotná Theia je napísaná v stroji TypeScript a používa PhosphorJS ako základ pre svoju škrupinu a rozmiestnenie pretiahnuteľných dokov. Integruje terminál, ktorý sa znovu pripojí pri opätovnom načítaní prehľadávača, aby sa zachovala história príkazového riadku. Ak chcete, môžete si vytvoriť vlastné rozšírenia pre server Theia.

Existujú tri hlavné spôsoby, ako vyskúšať Theiu. Jedným z nich je spustenie v Dockri:

docker run -it -p 3000: 3000 -v „$ (pwd): / home / project: cached“ theiaide / theia: next

Druhým je jeho spustenie v Gitpode (pozri bočný panel a snímka obrazovky nižšie). Tretie v poradí je spustenie aplikácie Eclipse Che verzie 7 alebo novšej (pozri nasledujúcu časť), ktorá ako svoje používateľské rozhranie používa Theiu namiesto používateľského rozhrania Java používaného v starších verziách Che.

Projekt Eclipse Theia obsahuje príspevky od spoločností TypeFox, Ericsson, Red Hat, IBM, Google a ARM. Plán projektu obsahuje systém doplnkov na podporu rozšírení VS Code (okrem jazykových serverov), integráciu s testovacími rámcami a ďalšie vylepšenia.

TypeFox Gitpod

Gitpod je komerčne hostované prostredie (pozri snímku obrazovky vyššie) určené na otváranie úložísk GitHub v pracovných priestoroch. Gitpod IDE je open-source a založený na platforme Eclipse Theia. Gitpod, ktorý je v súčasnosti vo fáze bezplatného beta testu, bude pre projekty open source vždy zadarmo, bude však nakoniec vyžadovať predplatné na otvorenie súkromných úložísk a na používanie viac ako 100 hodín mesačne.

Cloud Gitpod.io momentálne beží vo viacerých klastroch Kubernetes hostených v infraštruktúre Google Cloud v troch rôznych regiónoch po celom svete. Produkt Gitpod je k dispozícii aj pre súkromný hosting.

Eclipse Che

Eclipse Che je otvorený zdrojový server pre vývojárov a cloud IDE určený pre tímy a organizácie. Che verzia 7, ktorá je v súčasnosti v beta verzii, používa Eclipse Theia ako základ svojho IDE. Staršie verzie Che používajú IDE založené na GWT. Pracovné priestory Che bežia v kontajneroch na Docker, OpenShift alebo Kubernetes.

Môžete spustiť Che vo verejnom cloude, súkromnom cloude alebo ho nainštalovať do ľubovoľného operačného systému. Che bol testovaný na Ubuntu, Linux, MacOS a Windows. Môžete tiež spustiť Che v samoobslužnom pracovnom priestore hostenom na //che.openshift.io/, pre ktorý musíte mať alebo si musíte vytvoriť bezplatné prihlásenie OpenShift alebo Red Hat.

Eclipse Che navyše obsahuje jadro Red Hat CodeReady Workspaces, nového vývojového prostredia pre OpenShift. Okrem toho, že sú podporované Red Hatom, majú pracovné priestory CodeReady vopred pripravené zásobníky s podporovanými technológiami Red Hat a zahŕňajú Red Hat SSO na spracovanie autentifikácie a zabezpečenia medzi vývojárskymi tímami.

Projekt Eclipse Che obsahuje príspevky od viac ako 20 spoločností vrátane spoločností CodeEnvy (pôvodný vývojár spoločnosti Che), Docker, IBM, Red Hat a TypeFox. Plán Che obsahuje dokončenie integrácie Theia a zásuvné systémy pre Theia a Che.

Cloud AWS9

Cloud9 IDE, ktoré som v roku 2017 spomenul ako Go IDE, teraz patrí spoločnosti Amazon Web Services. Okrem toho, že má viacjazyčný editor kódov založený na prehliadači, debuggery pre niekoľko jazykov a terminál s predbežnou autorizáciou pre služby AWS, Cloud9 teraz umožňuje aj spoločné kódovanie.

Vývojové prostredia Cloud9 môžete spúšťať na spravovaných inštanciách Amazon EC2 alebo na ľubovoľných serveroch Linux, ktoré podporujú SSH. Cloud9 obsahuje nástroje pre viac ako 40 programovacích jazykov, hoci iba päť má debuggery, sedem má linting a 12 má dokončenie kódu.

Ak spustíte Cloud9 na EC2, inštancia EC2 sa automaticky zastaví po zatvorení Cloud9, štandardne po 30 minútach, a váš kód bude pretrvávať v úložisku Amazon EBS. Ak spustíte Cloud9 na svojom vlastnom serveri Linux, kód bude pretrvávať v lokálnom úložisku. Ak reštartujete Cloud9 po zastavení jeho inštancie, Cloud9 automaticky reštartuje inštanciu a obnoví vašu reláciu úprav tam, kde ste skončili.

Inštanciu Cloud9 môžete ľahko naplniť z úložiska alebo z miestnych súborov. Na snímke obrazovky nižšie som použil Git z príkazového riadku Cloud9 na kontrolu úložiska GitHub pre Keras. Ak upravujete projekt na základe úložiska, pre ktoré máte povolenie na odovzdanie, môžete repo aktualizovať a podľa potreby načítať zmeny z príkazového riadku. Cloud9 nemá grafickú podporu pre správu verzií.

Všimnite si obrysové zobrazenie vpravo na snímke obrazovky nižšie, ktoré funguje dobre na hrubú navigáciu v súbore. Ponuka Go zobrazená v ľavom hornom rohu funguje dobre pre všeobecnejšiu navigáciu. V Cloud9 nie je žiadna funkcia refaktoringu, aj keď existuje jednoduché preformátovanie kódu.

AWS Cloud9 je integrovaný s Amazon Lightsail, AWS CodeStar, funkciami AWS Lambda a AWS CodePipeline. Integrácia lambdy sa javí ako obzvlášť dobrá.

Ktoré cloudové IDE?

Aplikácie Eclipse Theia, Eclipse Che a AWS Cloud9 vám umožňujú upravovať a ladiť kód vo viacerých programovacích jazykoch z prehliadača. Existujú rozdiely v rozložení a funkčnosti, ale nie dosť na tom, aby na nich záležalo, pokiaľ nechcete dosiahnuť niečo dosť pokročilé, napríklad refaktoring.

Cloud9 je obzvlášť dobrá voľba, ak pracujete na projektoch AWS, a Che je obzvlášť dobrá voľba (ako CodeReady), ak pracujete na kóde pre systémy Red Hat. Theia poskytuje najpríjemnejšie editačné prostredie z týchto troch, ale akonáhle Che 7 vyjde z beta verzie, bude mať tiež Theia IDE.

$config[zx-auto] not found$config[zx-overlay] not found