sobota 28. listopadu 2009

Eclipse E4 - nejlepší RCP platforma

Dlouhou dobu mi ležel v "šuplíku" dokument Eclipse E4 popisující koncept, kterým ubíra další generace Eclipse.

Hodně často je slyšet, že Eclipse, jako IDE pro Javu, nedosahuje takové úrovně jako IntelliJ IDEA. Můžete s tímto názorem souhlasit a nebo jej rozporovat, ale je důležité si uvědomit následující fakta. Eclipse není primárně navržen jako IDE pro Javu, ale jako platforma pro vývoj nástrojů a aplikací.

Pokud tedy očekáváte, že verze 4 přinese nějaký zásadní posun v oblasti vývojových nástrojů, pak budete pravděpodobně zklamání. Samozřejmě přijdou nějaké dílčí vylepšení, například podpora komplexnějšího projektového layoutu, ale revoluci nečekejte. Osobně si myslím, že to je dobře, protože Eclipse vývojáři se mohou soustředit na to co děla Eclipse Eclipsem a to je vlastní platforma. Eclipse možná není tím nejlepším IDE pro Javu, ale bez nejmenší diskuze je nejlepší platformou pro vytváření nástrojů a aplikací.

Kromě vylepšeného programového modelu, který by měl umožnit lepší spolupráci pluginů, mne zaujaly poměrně zásadnější změny na poli vlastního UI. První velkou změnou je možnost popsat UI (SWT) deklarativně - pomocí XML a nebo EMF modelu. Aplikační kód nebude tedy již obsahovat definici UI což přinese několik výhod.

  • S modelem UI bude možné manipulovat za běhu podobně jako měníme například pomocí JavaScriptu DOM HTML stránek.
  • UI půjde nastylovat. E4 pro tyto účely nabízí rozšířené CSS (lepší selektory).
  • UI bude možné renderovat různými způsoby.

U posledního bodu bych se rád krátce zastavil. Eclipse E4 totiž již obsahuje renderer SWT komponent do Adobe Flex. Cesta do duše internetového prohlížeče je otevřena. Když uvážíme sílu tohoto frameworku pro vytváření RIA a programový model Eclipse, pak se zdá, že to je nejslibnější kombinace pro tenké klienty vůbec. Nenapadá mě moc technologií, které by mohly konkurovat a to i z .NET světa.