Začali jsme programovat ve flutteru a naše aplikace jsou teď rychlejší a příjemnější. Se stejnými lidmi, náklady i časem na vývoj.
Flutter je platforma pro vývoj mobilních aplikací, která umožní jednou napsaný program spustit na Android i iOS. Odpadá tedy nutnost psaní dvou stejných aplikací jako v případě nativního vývoje. V porovnání s hybridním přístupem, který toto umožňuje také, dosahuje Flutter vyšší rychlosti zobrazení a příjemnějšího uživatelského rozhraní. Platformu představila společnost Google v roce 2015, od té doby si prošla obdobím svých dětských nemocí a dnes je použitelná pro seriózní vývoj. V létě 2022 dosáhla na 16. místo popularity na Gitstar (https://gitstar-ranking.com/repositories) , což dokazuje její popularitu mezi vývojáři. Pro provozovatele to znamená jakýsi příslib, že aplikace ve Flutteru budou dlouho podporovány.
Pro naše agenturní klienty je vždy důležité, jak je aplikace svižná, jaký má celkový uživatelský feeling. Vývoj ve Flutteru zde nabízí rychlost nativu za cenu hybridu. Pro aplikace, které mají podtrhnout prestiž podnikání, je to důležité. Požadavkem agenturních zákazníků je často také dostát grafickému návrhu na pixel přesně, tak říkajíc „pixel perfect“. UI je možné realizovat za použití vektorové grafiky. Vykreslování řeší vlastní grafický engine a není rozdíl mezi zařízeními různých verzí nebo operačních systémů.
Vývojářů se zkušenostmi je v porovnání s nativním či hybridním vývojem zatím méně, avšak platformu Flutter a jazyk DART se lze naučit relativně rychle. Naše vývojáře to hodně bavilo. Dokumentace je dostatek i komunita dostatečně veliká. Oproti hybridnímu vývoji je zde třeba mít základy nativu, protože část vývojového cyklu se odehrává v této části. A tak je třeba základně ovládat XCode a Andorid Studio, plus je mít nainstalované.
Z pohledu obchodu a projektového řízení byly na začátku otázky – jak se změní výkonnost týmu, jaká rizika zde hrozí. Zatím to vypadá, že rychlost vývoje řádově odpovídá hybridnímu přístupu. V porovnání s náročností nativního vývoje je 4x rychlejší (vývoj aplikace pro jednu platformu je 2x rychlejší, krát dvě platformy). Rizika? Na počátku jsme se setkávali s potížemi na iOS, kde bylo poznat, že primární platformou je Android, avšak v novějších verzích už není žádný rozdíl poznat.
Subjektivně se zatím zdá, že při vývoji ve Flutteru klesl počet chyb spojených s rozdílem zařízení a velikostí displejů. Pokud jde o podporu starších zařízení, nezaznamenali jsme žádné omezení. Velikost aplikace narostla o cca 10MB. A to nejdůležitější – schválení na Apple bylo zatím vždy bez problémů.
Jazyk DART:
Struktura aplikace:
UI/UX:
Knihovny komponent
Ostatní
Přechod na vývoj mobilních aplikací ve Flutteru se ukázal jako jednoznačně dobrý krok vpřed. Škoda, že jsme to neudělali dříve. I když je to otázka, protože byly nevyřešené potíže s podporou na iOS.
blablabl