È stata rilasciata la prima versione ufficiale del nuovo ambiente di sviluppo integrato Theia IDE, sviluppato dall'organizzazione Eclipse Foundation basato sull'editor di codice Theia e sui plugin sviluppati per esso. Il codice del progetto è scritto in TypeScript e distribuito sotto licenza EPLv2 (Eclipse Public License). Il prodotto Theia IDE è fornito come applicazione autonoma per desktop, progettata per l'installazione su sistemi locali, nonché in forma di versione online per l'uso tramite browser (per il deployment della versione online sul proprio server è fornita un'immagine Docker pronta all'uso).
Il progetto è in sviluppo con la partecipazione di aziende come IBM, Red Hat, Google, ARM, Broadcom, Huawei, Samsung, Ericsson, SAP e Arduino su una piattaforma neutrale, supportata dall'organizzazione Eclipse Foundation e indipendente dai singoli produttori. Inizialmente, l'ambiente di sviluppo era conosciuto come Theia Blueprint ed era utilizzato come set di esempi e modelli per costruire le proprie soluzioni basate sulla piattaforma Theia, ma ora è stato trasformato in un prodotto separato, distintivo per la sua struttura modulare e le sue flessibili possibilità di personalizzazione dell'ambiente.
La piattaforma Theia è costruita su un'architettura frontend/backend, che prevede l'esecuzione di due processi, uno dei quali è responsabile della rendering dell'interfaccia e l'altro della logica interna. I processi interagiscono utilizzando HTTP tramite JSON-RPC attraverso WebSockets o REST API. La separazione consente di organizzare il lavoro attraverso il Web, nel quale il backend, che utilizza la piattaforma Node.js, viene eseguito su un server esterno, servermentre il frontend con l'interfaccia viene caricato nel browser. Nell'applicazione Theia IDE, entrambi i processi vengono eseguiti localmente, e per creare un'applicazione autonoma viene utilizzata la piattaforma Electron.
In Theia IDE sono presenti funzionalità come una barra degli strumenti dinamica configurabile, pannelli di editing del codice staccabili in finestre separate, un sistema di schede, la possibilità di organizzare il lavoro remoto e una modalità di editing collaborativo e gestione dei progetti in fase di sviluppo. Il progetto si presenta come attento alla privacy degli utenti e non include l'invio di telemetria per impostazione predefinita.

L'ambiente fornisce strumenti di sviluppo per Python, Java, JavaScript, C++ e qualsiasi altro linguaggio supportato attraverso l'attivazione dei relativi processi. server LSP (Language Server Protocol) che definisce la logica di analisi della sintassi, completamento automatico, navigazione nel codice, diagnosi degli errori e refactoring. Per l'integrazione con debugger esterni, è supportato il protocollo DAP (Debug Adapter Protocol). Il sistema di plugin per Theia IDE è compatibile con le estensioni sviluppate per l'editor di codice VS Code, consentendo l'uso di oltre 3600 estensioni esistenti presenti nel catalogo Open VSX.
Fonte: opennet.ru
