Menu menu icon
visual triangle
Blog article image

DAMI komentář: Jak efektivně vytvořit aplikaci pro obě platformy?

Mobilním aplikacím se stále daří a s jejich rozvojem přicházejí také nové přístupy v jejich vývoji, které tak doplňují stávající řešení na trhu (více píšeme tady).

Pokud vlastníte mobilní aplikaci nebo jste na cestě k jejímu vývoji, určitě vás bude zajímat, jak aplikaci postavit co nejefektivněji. Jedna z možností, jak toho docílit, je multiplatformní vývoj. Možná jste už slyšeli o frameworcích jako je React Native, Xamarin, Cordova, aj. Nedávno však se svým řešením přišel i Google a vydal nový framework jménem Flutter.

 

Co je to Flutter

Google se chtěl pokusit vytvořit framework, který by usnadnil vývoj aplikací. Jelikož byli s výsledkem spokojeni a vyžadovali v celém procesu zpětnou vazbu od vývojářů, rozhodli se ho na konci roku 2017 prezentovat veřejnosti. Reakce vývojářů byly skvělé a proto se nabízelo pokračovat s vývojem i pro web. Jeden kód tedy stejně běží na Android, iOS i na webu.

A jak vlastně Flutter funguje? Zjednodušeně si to můžete představit jako malířské plátno, které je pověšené nad samotnou nativní aplikací. Flutter se stará o každý vykreslený pixel na obrazovce, nespoléhá se tedy na samotné grafické komponenty z Material nebo Cupertino Designu (avšak vychází z nich a pokud vývojář chce, může je využít). Na základě toho je možné prohlásit, že je snadné postavit graficky komplexní aplikace za extrémně krátký čas.

 

Benefity Flutteru

  • Možnost snížit náklady za vývoj obou platforem
  • Rychlé prototypování: Komponenty ve Flutteru fungují jako lego, které se postupně skládá dohromady
  • Rychlost běhu aplikace (performance)
  • Je multiplatformní - funguje na Android, iOS, web i na některých embbeded zařízení jako je třeba známý Raspberry Pi

Velkou přidanou hodnotou Flutter je právě možnost vytvoření plnohodnotné mobilní aplikace pro obě platformy zároveň. Díky knihovnám, které odstíní vývojáře od konkrétní platformy (Android, iOS) lze jednoduše pracovat s kamerou, GEO lokací, úložištěm, sítí atd. Když potřebujete vytvořit aplikace se zajímavým vzhledem, můžete využít tento cross-platform framework.

 

Výhody vývoje

  • Srozumitelnost: Komponenty ve Flutteru fungují jako lego, které se postupně skládá dohromady a následně vytváří celou aplikaci.
  • Přístup k nativním funkcím: Flutter umožňuje použití nativních funkcí platforem
  • Využití widgetů: Flutter nabízí díky rozsáhlé komunitě velké množství komponent, které je možné využít
  • Design na míru: Flutter umožňuje nastavení dvou variant designu, protože sám pozná, na jaké platformě zrovna běží. Díky tomu lze dosáhnout dodržení design guidelines u obou platforem (Android i iOS).

 

Nevýhody vývoje

  • Komplexní projekty: Flutter není vhodný pro komplexní aplikace, které jsou založené na složité logice dat z jednotlivých platforem (jako je třeba časté dotazování na polohu, když je aplikace v pozadí,..). V těchto případech je vhodnější a do budoucna udržitelnější přistoupit k vývoji pro obě platformy zvlášť.
  • Povědomí o platformách: Některé problémy vyžadují alespoň základní znalost platformy, je tedy nutné znát minimálně vývojová prostředí druhé platformy (např. jak nastavit push notifikace, apod.).

 

Developeři nyní získávají nový nástroj, který umožňuje vytvářet aplikace pro obě platformy zároveň a to bez větších překážek. Jestli si chcete vyzkoušet Flutter na vlastní kůži nebo se dozvědět více, doporučujeme začít zde.

Pokud vás tento způsob zaujal, neváhejte a napište nám nebo zavolejte Lukášovi, máme s vývojem zkušenosti a rádi pomůžeme i vašemu projektu.

 

Zdroj úvodního a náhledového obrázku: flutter.dev