Flutter je open-source framework vytvořený společností Google pro vývoj nativně kompilovaných aplikací pro mobilní telefony (Android, iOS), web, desktop i vestavěné systémy (včetně Raspberry Pi) z jediné programové základny (codebase).
Na rozdíl od konkurence Flutter nepoužívá nativní UI komponenty systému, ale vykresluje každý pixel sám pomocí vlastního vysoce výkonného enginu.
Flutter používá programovací jazyk Dart. Ten byl navržen tak, aby podporoval dva typy kompilace:
Flutter funguje podobně jako herní engine. K vykreslování UI využívá knihovnu Skia (a nověji Impeller), která komunikuje přímo s GPU přes nízkoúrovňová API jako Metal (iOS) nebo Vulkan (Android). Díky tomu dosahují aplikace stabilních 60 až 120 FPS.
Ve Flutteru neexistuje rozdíl mezi „pohledem“, „kontrolerem“ a „stylem“. Vše od tlačítka přes zarovnání až po celé obrazovky je Widget.
| Vlastnost | Výhoda | Nevýhoda |
|---|---|---|
| Rychlost vývoje | Jedna codebase pro všechny platformy a Hot Reload. | Nutnost učit se nový jazyk (Dart). |
| Výkon | Nativní rychlost díky AOT kompilaci. | Větší velikost výsledné aplikace (binárky). |
| Design | Pixel-perfect kontrola nad každým prvkem UI. | Někdy těžší napodobit specifické chování nového iOS/Androidu ihned po vydání. |
Flutter je ideální volbou pro aplikace, které využívají další technologie v tvé Wiki:
— Související pojmy: GCP, Architektura ARM, Raspberry Pi, Gemini