Společnost JetBrains vydala Compose for Desktop and Web, port Jetpack Compose pro Android společnosti Google, do verze alfa. Zde je novinka.
Pokud jste ještě neslyšeli Jetpack Compose, kde jsi byl v poslední době? Google vytvořil tento deklarativní rámec uživatelského rozhraní, aby nahradil standardní modul rozložení XML v systému Android. Compose umožňuje vývojářům vytvářet jejich rozvržení a doprovodnou logiku vše v Kotlinu. JetBrains, společnost stojící za Kotlinem, se také zapojila do akce Compose a pracuje na jejím přenesení na desktop i web.
JetBrains Compose for Desktop and Web je již nějakou dobu ve vývoji. Má veřejný pre-alfa „Technology Preview“, který mohou vývojáři použít k vytváření aplikací pro různé platformy v Compose. Osobně jsem to používal moje aplikace Samsung Firmware Downloader, a funguje to docela dobře.
Dnes JetBrains propaguje svou verzi Compose na alfa. To znamená stabilnější API spolu s některými novými funkcemi a změnami.
Vytvořit pro web
Za prvé, web. Compose for Web je sudý
novější než Compose for Desktop, a chybí tomu docela dost. To ovšem neznamená, že je to zbytečné. I když vývojáři možná nezískají ozdobné základní prvky uživatelského rozhraní dostupné pro Desktop a Android, vývojáři stále získávají výhody psaní v Kotlinu s deklarativními principy návrhu.Nyní, když je Compose ve fázi alfa, mělo by být Web API stabilnější a v průběhu času by se mělo provádět méně změn, pokud vůbec nějaké.
Vytvořit správu oken
Zpět na plochu, došlo k některým změnám v tom, jak vývojáři interagují s okny ve své aplikaci.
První je nový skládací okno API. To umožňuje vývojářům deklarativní interakci s okny v jejich aplikaci. Například titulek okna lze nyní změnit pomocí stavu a okna lze dokonce otevírat a zavírat na základě stavů.
Další část rozhraní API pro nové okno umožňuje vývojářům zvolit, aby se nová okna otevírala s adaptivní (namísto pevné) velikosti. To znamená, že Compose spočítá, jak velké okno musí být na základě jeho obsahu, automaticky nastaví počáteční velikost a poté okno otevře.
Pluginy
JetBrains Compose vždy měl plugin Gradle pro provádění kompilace a provádění. S verzí alpha tento plugin získává navýšení verze spolu s některými opravami chyb.
Navrchu pluginu Gradle však je nyní plugin IDE pro IntelliJ IDEA a Android Studio pro lepší podporu Compose for Desktop a Web. Podobně jako Compose pro Android, tento plugin umožňuje vývojářům anotovat sestavitelné funkce jako náhledy a zobrazit náhledy rozložení přímo v IDE.
Plugin je nyní velmi základní. Jediná další funkce, kterou má právě teď, odstraňuje IDE varování před používáním velkých písmen v názvech složených funkcí. Postupem času ale získá další funkce, jako je živý náhled.
Podpora architektury
I když je cílem JetBrains Compose být multiplatformní, zatím nemá plnou podporu pro všechny architektury CPU. Alfa rozšiřuje současnou podporu na následující:
- macOS: x86-64 (amd64), arm64
- Windows: x86-64 (amd64)
- Linux: x86-64 (amd64), arm64
- Web: cokoliv nedávného
I když to rozhodně nepokrývá všechno, podpora se bude v budoucnu jen zlepšovat.
Budoucí vývoj
Volba JetBrains přesunout Compose do stavu alfa je důležitá. Znamená to, že pro něj plánují pokračovat ve vývoji s případnou beta a stabilní fází. A samozřejmě další funkce.
Závěr
Je docela vzrušující vidět, co Compose přináší. Na Androidu nahrazuje zastaralý (i když perfektně použitelný) layout engine. Na desktopu a webu přináší deklarativní design využívající silně napsaný jazyk, který je jednodušší (alespoň pro mě) než jazyky založené na TypeScriptu. Zejména na ploše pomáhá Compose zaplnit docela velkou mezeru pro funkční moduly rozložení.
Pokud máte zájem vyzkoušet JetBrains Compose sami, podívejte se na úložiště GitHub další podrobnosti o tom, jak začít.