A Flutter egy hibrid mobilalkalmazás-fejlesztési platform a Google-tól, amely 2018 végén elérte az 1.0-at. Bár a hibrid fejlesztési keretrendszerek listáján újonnan belépő, a mögötte álló nagyszerű ötletek miatt a fejlesztők gyorsan elkapkodták.
webalkalmazás biztonsági problémák és megoldások
Ebben a cikkben az a célom, hogy feltárjam ezeket az ötleteket és megírjam a Flutterrel kapcsolatos tapasztalataimat, és azt, hogy miért érzem a hibrid mobilalkalmazások fejlesztésének jövőjét.
Annak ellenére, hogy vannak régebbi hibrid alkalmazás-keretrendszerek a piacon, egyre több a nagy nevű vállalat, amely a Fluttert választja a mobilalkalmazásaihoz. Amíg a Lebegő kirakatoldal ezek közül sokat felsorol, íme néhány figyelemre méltó alkalmazás, amely a Fluttert használja az egész alkalmazáshoz vagy egy jelentős szolgáltatáshoz:
Bár a Flutter keretrendszer meglehetősen képes, még mindig viszonylag új. Az egyensúly kedvéért megvitatok néhány korlátozást is, amelyekkel tisztában kell lennie, mielőtt elkötelezi magát a Flutter mellett.
Remélem, hogy a cikk elolvasása után jól megismerheti a Flutter előnyeit és hátrányait, és elegendő információval rendelkezik ahhoz, hogy eldöntse, a következő mobilalkalmazás-projektben érdemes-e használni a Fluttert.
Fejlesztőként ez az a nézőpont, amelyet a legjobban ismerek és a legtöbb információt meg tudom osztani.
Az első kellemes meglepetés, amelyet a Flutter a fejlesztők számára okoz, az, hogy milyen gyorsan kell elindulnia. A befejezés kevesebb, mint 30 percet vesz igénybe a telepítési folyamat és működő fejlesztői környezetet kell kialakítani. Innentől kezdve minden készen áll hozza létre az első Flutter alkalmazást .
A Flutter remek szerkesztőintegrációval is rendelkezik. Én személy szerint az Android Stúdiót használom, de vannak ilyenek rendelkezésre álló utasításokat az IntelliJ, a VSCode vagy az Emacs beállításához.
A hibrid alkalmazáskeretekkel kapcsolatos korábbi tapasztalataimhoz képest a fejlesztési folyamat is érezhető tisztító . Például, amikor a WebViews segítségével sok elemű listákat jelenítettem meg (kb. 100 körül), nagy CPU-használatsal kellett megküzdenem, különösen akkor, amikor a felhasználó görgette a listát. Megoldottam ezeket a használatával Ionikus keretelemek kifejezetten erre készült. A Flutterben a listák megjelenítésének egy elfogadott módja van, a ListView
, amely csodálatos teljesítményt nyújt a dobozon kívül.
Egy másik dolog, ami kellemesen meglepett, az az élő újratöltési funkció. Full-stack fejlesztőként olyan rendszerekhez voltam szokva, mint a BrowserWatch, amely élő újratöltést biztosít a böngészőben.
A natív fejlesztés nem rendelkezik ezzel (de azt gondolom, hogy az Apple SwiftUI ezen a fronton némi előrelépést jelent az iOS fejlesztéshez). Az Android és iOS fejlesztőknek általában meg kell írniuk a kódot, majd meg kell várniuk, amíg összeáll és betölti őket az eszközre vagy a szimulátorra, mielőtt láthatják a változásokat.
A Flutter (a la React Native) egy élő újratöltési mechanizmust biztosít, ahol az alkalmazás kódja újratöltődik az eszközre, amint a fejlesztők elérik a „mentés” gombot. Ez azonnali visszajelzést ad, ami sokkal gyorsabbá teszi a fejlesztést.
Az alkalmazás teljesítménye egy másik mutató, ahol a Flutter lassan van győztesként feltűnő .
Mivel a Flutter keretrendszer aktív fejlesztés alatt áll, sok helyen lehet optimalizálni a teljesítményt. Ez nyilvánvaló például a Flutter 1.17-ben, amely az új iOS-eszközökön akár 50% -kal növelte a megjelenítési teljesítményt, és bizonyos típusú terheléseknél akár 70% -kal is csökkentette a memóriafelhasználást.
A Flutter másik figyelemre méltó tulajdonsága, hogy mindkét mobilplatformon valóban konzisztens felhasználói felület található. Mivel a Flutter a saját renderelő motorját használja - erről bővebben később - a felhasználói felület az pontosan ugyanez az iOS-n és az Androidon is. A fejlesztőknek már nem kell a platform-specifikus stílusproblémákkal foglalkozniuk, hogy minden pontosan úgy nézzen ki, mint a design: Ez a garancia a keret része.
Három másik kisebb, de mégis fontos szempontot érdemes itt megemlíteni:
A legnagyobb flutter előny, amelyre a legtöbb vállalkozás gondol csak egy csapatot kell felvenni mind az iOS, mind az Android platformra. Fontosabb előny azonban, amelyet sok vállalkozás figyelmen kívül hagy gyorsabb piacra kerülési idő . Az előző szakaszban szereplő fejlesztési előnyöket kihasználva egy kisebb fejlesztőcsapat gyönyörű, natív teljesítménnyel rendelkező alkalmazást készíthet, amely a Flutter segítségével sokkal gyorsabban biztosítja ugyanazt a felhasználói élményt mindkét platformon.
A Flutter lehetővé teszi a fejlesztők számára, hogy valóban felépítsenek néhányat gyönyörű felhasználói felületek . Vessünk egy pillantást egy közelmúltbeli kihívás a Google-tól és a Lenovótól, hogy egy gyönyörű óraszámú felhasználói felületet készítsen a Lenovo Smart Clock számára. A győztes, Részecske óra Mickel Andersson nem csak egyedülállóan elegáns - hanem bemutatja is hogy a performáns animációk mennyire vannak Flutterben.
A Fluttert fontolgató vállalkozások számára, de nem biztos abban, hogy ez a helyes út, a Flutter fokozatosan kihasználható: A meglévő mobilalkalmazások egyszerre egyetlen alkatrészt integrálhatnak a Flutterbe. Valójában a legtöbb nagyvállalat így kezdi a Flutter-t azzal, hogy meglévő alkalmazásának egy kis részét beépíti a Flutterbe, majd lassan lecseréli a többi alkatrészt, amint meglátják az előnyeit.
Igazság szerint Flutter, mivel újabb, nem az egészen ugyanolyan csatában tesztelt, mint más hibrid mobilalkalmazás-keretrendszerek, például a React Native - végül is a React Native végfelhasználói elérése a Facebook, az Instagram, a Skype és a Discord mobilalkalmazásait fedi le.
Az alapértelmezett válasz: „Használjam-e a Fluttert?” egyelőre a óvatos igen . Ennek oka, hogy a projektmenedzsereknek még mindig mérlegelniük kell, hogy melyik speciális funkcióra lesz szükségük, és ha van ilyen győződjön meg arról, hogy ezek a funkciók elérhetőek a Flutterben mielőtt elkötelezi magát a használata mellett. Különösen érdemes megkérdezni, hogy egy csapatnak mely könyvtárakra és beépülő modulokra lehet szüksége egy adott alkalmazás felépítéséhez. A Flutter, mint újabb bejegyzés a mobilalkalmazás-keretrendszerben, nem rendelkezik olyan kiterjedt könyvtárakkal és bővítményekkel, mint a React Native.
Például a Flutter kameratámogatása még nem fejeződött be, a zoomolás és a vakuvezérlés még nem része a hivatalos kamera beépülő modulnak. Számomra ez nem volt üzletkötő, mivel sikerült megtalálni egy harmadik féltől származó plugint, amikor integrálnom kellett a fotó / videó funkciókat egy általam épített alkalmazásba.
Egy másik fontos bővítmény, amelyet hiányolhat, a Google Maps. Nincsenek a Dart-ban honos Google Maps beépülő modulok, és vannak ilyenek is csatlakoztat hogy lehetővé tegye a Google Maps integrálását a Flutter kódjába, a Flutter olyan funkcióit használja (platform nézetek), amelyek még a fejlesztők előnézeti állapotában vannak.
Még egy dolog, amely sok projektet nem érint, de tudnia kell, hogy a Flutter egyelőre nem támogat 3D-s képességeket. A csapat egyelőre csak a 2D-re koncentrál. De a legtöbb alkalmazás nem használ semmilyen 3D-s funkciót, ezért ez nem lehet üzletkötő a fejlesztők többségének.
Az elmúlt két évben három Flutter alkalmazást kiadtam, és számos dolgot megtanultam, bár azt szeretném, ha elmondtam volna nekem, amikor elindultam. Ide sorolom őket abban a reményben, hogy segítenek a Flutter fejlesztési útjában.
A rebbenés az nagyon könnyű elkezdeni. Egy csodálatos tanfolyammal kezdtem App Sörfőzde . Az első modulok befejezése után azonban úgy gondoltam, hogy már elég megtanultam, és elkezdtem építeni az első általam elindított alkalmazást.
Türelmetlenségem miatt számos modult kihagytam azon a tanfolyamon, amely fontosnak bizonyult, és ezeknek a moduloknak a tanulságait keményen kellett megtanulnom, hibázva. Pontosabban, sokkal jobb munkát végeztem volna az első használatkor Hebegés az alkalmazás fejlesztéséhez ha megtanultam volna néhány Flutter legjobb gyakorlatot:
Végül megtanultam ezeket a dolgokat, de előbb sok hibát kellett elkövetnem. Átírtam az első általam készített alkalmazás jelentős részeit. A második Flutter alkalmazásommal azonban tanultam a hibáimból, és végül jobb és gyorsabb munkát végeztem.
Számos erőforrás található meg könnyen, ha a Google-on keres, hogy megismerje a fent felsorolt fogalmakat. Kezdheti azzal, hogy megnézi a Tudj meg többet oldal a Flutter oldalon.
Egy másik dolog, amit találtam, hogy az új Flutter újdonságai miatt nincs egyetlen minta az alkalmazás strukturálására. A többnyire Django-alapú fejlesztői karrierből származom, és tudom, hogy az MVC a Django-alkalmazásokban használt minta. Az iOS-nek az MVVM mintájában is egyértelmű nyertese van, amelyet követ. Az Android rendelkezik az irányelvek legjobb tervezésével kapcsolatos irányelvekkel.
A Flutternek nincs olyan építészeti mintája, amely „megnyerte” a sok lehetőséget. Ez kezdetben nehéz időket adott nekem. Végül számos Flutter-alkalmazás kifejlesztése szerintem a legjobb, ha egyszerűen választunk egy architektúrát, és ragaszkodunk hozzá.
Én személy szerint használom a provider
csomag függőségi injekcióként és változáskezelési keretrendszerként egyaránt. A Flutter alkalmazásaim szintén nagyjából három vonalra oszlanak:
Consumer
segítségével modult a Provider
csomagot a nézeteimbe, hogy a rendelkezésre álló adatok alapján felépíthessem a felhasználói felületet. A Consumer
A widget az állapotváltozáskor is újjáépíti a nézetet, így reagálnak az alkalmazásaim az állapotváltozásokra.Az tömb könyvtár érdemes a provider
alternatívájaként is figyelembe venni csomag. Kicsit más architektúrával rendelkezik, és események és állapotok folyamát használja a nézetek és modellek összekapcsolására.
Ez kissé összetettebb módja az állam kezelésének, mint a provider
használata könyvtár, de kifizetődő, ha van egy összetett alkalmazása, ahol ugyanazon az adaton több forrásból is módosít, és több helyre kell reagálnia ezekre a változásokra.
Ha végül nem használja a BLoC-t vagy a provider
-t, akkor ki kell találnia néhányat az állam kezelésének módszere az alkalmazásban, különösen az értesítéseket illetően.
A React Native egyelőre messze a legnépszerűbb és legsikeresebb hibrid mobilalkalmazás-keretrendszer, és jó okkal. Ehhez egy népszerű és jól elkészített front-end webes keretrendszer, a React kellett, és lehetővé tette a front-end fejlesztők millióinak, hogy mobilalkalmazásokat is kezdjenek írni. Bízom abban, hogy a mai nagyszerű mobilalkalmazások közül soha nem készült volna el, ha a fejlesztőknek meg kellene találniuk az időt és a motivációt a natív iOS és Android fejlesztői SDK megtanulásához.
Ebben a háttérben bízom abban, hogy azt mondom, hogy a Flutter végül megnyeri vezető hibrid mobilalkalmazás-keretrendszerét. Ennek pár oka van.
A React Native komponenseket JavaScript kódban írják le, és natív vezérlőkké alakítják. Ez azt jelenti, hogy a felhasználók más felhasználói felületet éreznek az alkalmazás iOS és Android verzióiban. Ha a fejlesztők natív élményt próbálnak elérni a felhasználók számára, ez nagyszerű.
Ez azonban azt is jelenti, hogy ha a fejlesztők meg akarják szerezni a ugyanaz, következetes A felhasználói felület mindkét mobilplatformon keményen meg kell dolgozniuk a natív komponensek stílusának megalkotása érdekében, hogy egyformának tűnjenek, vagy különböző komponenseket kell használniuk, amelyek mindkét platformon azonos megjelenést és érzetet biztosítanak.
Ezt szembeállíthatod a Flutterrel, ahol a keretrendszer a saját widgetjeit biztosítja az összes támogatott platformon. Nincs fordítás, mert a Flutter nem támaszkodik a natív vezérlőkre a felhasználói felület festéséhez. Ehelyett a saját vezérlőkönyvtárát használja. A Flutter widget-könyvtárában valóban vannak olyan kezelőelemek, amelyek natív vezérlőknek tűnnek, de ezek teljesen választhatóak.
Ennek a megközelítésnek vannak előnyei és hátrányai. A legnagyobb profi, hogy most már pontosan ugyanaz az alkalmazás van mindkét platformon. De azért feladsz néhány dolgot ennek elérése érdekében.
Mivel a Flutter a saját widgetjeit használja a natívak helyett, ezért nem használhatja a meglévő könyvtárak sokaságát, amelyek egyedi kezelőszerveket biztosítanak Önhöz hasonlóan, a React Native minimális munkájával. A React Native alkalmazásban nagyon egyszerű egy kis burkolatot írni a meglévő natív vezérlő köré, és működtetni kell. Ezért is van az, hogy jelenleg nincs stabil Google Maps implementáció a Flutter számára.
A natív vezérlők beágyazásának képességén azonban jelenleg dolgoznak, és a fejlesztői előnézetben van, ami azt jelenti, hogy használhatja, de lehet, hogy hibákkal kell megküzdenie. Miután megjelent, lezárja ezt a meglehetősen nagy lyukat a Flutterben a React Native-hoz képest.
Ugyanez a Flutter szolgáltatás - a saját widgetek könyvtárának használata a natív helyett - óriási előnyt nyújt akkor is, ha egy teljesen új komponenst szeretne létrehozni. A React Native alkalmazásban fel kell építenie egy platform-natív összetevőt, és kötésekkel importálnia az alkalmazásába.
A Flutter segítségével egyedi elemeket építhet a Dart kódba. Teljes mértékben Ön felügyelheti a felhasználói felületet olyan widgetekkel, mint a CustomPainter
amellyel bármit rajzolhat, amire szüksége van, és rendelkezésre áll egy widget-könyvtár, amely lehetővé teszi az egyéni animációk végrehajtását. Soha nem kell kilépnie a Dart kódbázisból ezen egyéni kütyü felépítéséhez.
És ez szerintem az egyik legnagyobb Flutter előny. A kezelőfelületet teljes mértékben a Dart-kódtól vezérelheti, és már nem kell aggódnia a fejlesztett platformok natív SDK-jának megtanulása miatt.
Az Apache Cordova nem annyira keretrendszer, mint inkább böngészőburkoló. A Cordova segítségével webes technológiák felhasználásával készíti el az alkalmazását: HTML, CSS és JavaScript. A Cordova lehetőséget nyújt arra, hogy futtassa ezt az internetes alkalmazást mobil platformokon, és natív platform API-kat tesz közzé JavaScript-ben, így az alkalmazás kölcsönhatásba léphet a platformmal.
A Cordova számára számos különféle keretrendszer készült. Az egyik leghíresebb, amelyet a múltban használtam Ionikus keret . Olyan felhasználói felület-összetevőket kínál, amelyek a natív platform-összetevőkhöz hasonlóan mutatnak és működnek. Ezeket az összetevőket azonban HTML / CSS / JavaScript segítségével valósítják meg.
A Cordova és az Ionic fejlesztési tapasztalatai nagyon szépek, és az indulás nagyon gyors, ha Ön már webfejlesztő. Mivel webes technológiákat használó alkalmazásokat épít, a teljes webes ökoszisztéma rendelkezésre áll. Gondoljon a HTML / CSS / JavaScript-en alapuló kis összetevők és könyvtárak százezreire, és ezek közül a legtöbbet - ha nem az összeset - felhasználhatja. Ez azt jelenti, hogy a legtöbb szükséges widget már online elérhető az Ön számára.
Ez azonban hátrány is. Mivel webes technológiákat használ az alkalmazások felépítéséhez, nagy gondot igényel annak biztosítása, hogy az alkalmazás mobilalkalmazásnak tűnjön és úgy érezze magát, és ne csak egy olyan webhelyet, amelyet mobilra csökkentettek.
Míg a Cordova nagyszerű módja az MVP vagy akár az alkalmazás első néhány verziójának fejlesztésére, az első, amit a Flutterben építettem, egy ionos alkalmazás portja volt. Az első interakciótól kezdve észrevehetőek voltak a teljesítménybeli fejlesztések, különösen azokban a nézetekben, amelyekben sok tartalmat lehetett végiggörgetni.
Nincs tapasztalatom a Xamariannal kapcsolatban, ezért nem tudom igazságosan összehasonlítani a kettőt. Kutatásom során azonban találkoztam a remek cikk hogy korrekt összehasonlítást végez.
Noha a cikk a Flutter és a Xamarian között holtversenyben áll, bátran kijelenthetem, hogy ha olvastam volna, és választanom kellett volna a két keret között, akkor mentem volna a Flutterrel, mert azok a dolgok, amelyekben ragyog hogy többet értékelek.
A hibrid mobilalkalmazás-keretrendszerek közül a Flutter egyedülálló megközelítést alkalmaz. Nem delegálja a felhasználói felületet a natív platformra, és nem használ webnézetet. Ehelyett a Flutter saját renderelő motort használ az UI festésére. Ez hasonló ahhoz, ahogyan a játékok olyan játékmotort használnak, amely a kezelőfelületük minden részét generálja, ahelyett, hogy natív vezérlőket használnának.
A Flutter a nagy teljesítményű, csatában bevált módszert használja Skia grafikus motor rajzolni minden mobilalkalmazásában. A Skia használata két fő előnnyel jár, amelyekre gondolhatok, bár biztos vagyok benne, hogy a Flutter mögött álló Google mérnökei sokkal többet gondoltak:
A Flutter dokumentumai a Flutterről mint „React stílusú keretrendszerről” beszélnek. Ez abban nyilvánvaló, hogy az alkalmazások hogyan épülnek fel a kisebb kütyü ( alkatrészek a React terminológiában) együtt.
Flutter azonban vállalja a minden egy widget megközelítsen egy lépéssel tovább, mint bármely más keretrendszer, amellyel dolgoztam.
Egyszerű példa a párnázás. A legtöbb keretrendszerben a kitöltés a felhasználói felület elemének attribútuma. A Flutterben, Padding
olyan widget, amely más widgeteket is be tud burkolni magába, és párnázatot adhat gyermeke widgetje köré.
Egyedülállóbb, hogy a InheritedWidget
nem rendelkezik felhasználói felülettel és nem biztosít felhasználói interakciókat. Az egyetlen feladata, hogy információt adjon a widget-fához, hogy egy bizonyos ponton a fa mélyén kihúzhassa ezeket az információkat.
Például az alkalmazás gyökere - a MaterialApp
widget - a InheritedWidget
segítségével hitelesítési szolgáltatást juttathat a widget-fába. Most, a fa mélyén egy másik oldalon, például a felhasználói profil oldalán, használhat egy módszert az adott hitelesítési szolgáltatás kibontására és használatára.
Ez minden egy widget megközelítés némi megszokást igényel. De ha már ismeri, hatékony módja lesz az alkalmazások funkcionalitásának kiépítésére.
A csapkodás szorosan kötődik Darthoz. Míg a mag renderelő motor C / C ++ nyelven épül fel, ez csak egy kis része a Flutter-nek.
A Flutter kódbázis többségét Dartban írják, és vannak kiváló okok miért a Flutter csapata választotta. De a legnagyobb előny számomra az volt, hogy könnyedén megnézhettem a keretrendszer forráskódját - és az összes általa biztosított különböző modult -, és tanulhattam tőlük.
Ez erősebb előnyt jelent, mint sok fejlesztő észrevesz. Azt javaslom, hogy a legtöbb fejlesztő próbáljon választ találni a keretrendszerének / könyvtárának kódjában, mivel ez nemcsak segít megérteni, mi történik a takaró alatt, hanem kiváló minőségű, jól megtervezett kódnak is kiteszi őket, ami biztos módja fejlesztőként való növekedés.
Míg a Flutter biztosítja a felhasználói felület réteget, és az üzleti logikát egyszerűen kezelheti tiszta Dart-csomagokon keresztül, a natív platform képességeinek eléréséhez, például a földrajzi helymeghatározáshoz és a kamera vezérléséhez, a pub.dev harmadik féltől származó csomagjainak használata a legegyszerűbb stratégia.
Ha azonban van olyan funkció, amelyre szüksége van, amely nem érhető el egy meglévő csomagon keresztül, te magad írsz egyet nem túl nehéz. Magam nem készítettem platform-natív csomagokat, de kíváncsiságból sokaknak megnéztem a forráskódot.
Annak ellenére, hogy nem vagyok natív alkalmazásfejlesztő, többnyire megértettem e beépülő modulok natív részeit, és megtudtam, hogyan kapcsolódnak a Dart futásidejéhez üzenetátadás útján. A tapasztalt natív platformfejlesztők számára egy új csomag létrehozása a natív képességek kiaknázása érdekében nagyon egyszerű lesz.
Remélhetőleg ez a cikk elegendő információt adott ahhoz, hogy eldönthesse, használhatja-e a Fluttert a mobilalkalmazás-projektjében. Megpróbáltam kiegyensúlyozott képet adni a Flutterről, felsorolva mind az előnyöket, mind a hátrányokat.
Bár senki sem hozhat döntést helyetted, tudok adni némi elválasztási tanácsot arról, hogy miként közelíthetném meg azt a kérdést, hogy a következő csapos mobilalkalmazásomban használjam a Flutter-t. Ha a Flutter előnyei megadják az összes képességet, amire egy alkalmazásnak szüksége van, akkor szívdobbanással választanám.
Ez azért van, mert azon kevés területen kívül, ahol a Flutter jelenleg hiányzik, annak minden más aspektusa olyan, amelyet megcsodáltam és amelyekre támaszkodtam az elmúlt öt öt különböző Flutter-alkalmazás fejlesztésében és elindításában:
Akik felajánlják mobilalkalmazás-fejlesztési szolgáltatások bölcs lenne komoly pillantást vetni Flutterre, ha még nem tették meg.
Zárásként megemlítek egy utolsó Flutter-előnyt: Minden könyvtár vagy keretrendszer legjobb dokumentációjával rendelkezik, amellyel dolgoztam. Ritka, hogy guglizok egy Flutter kérdést, és erre nem válaszol egy oldal Flutter saját oldala .
Összefüggő: Flutter Tutorial: Hogyan hozzuk létre az első Flutter alkalmazást
Google Cloud Partnerként az ApeeScape Google által tanúsított szakértői állnak a vállalatok rendelkezésére igény szerint legfontosabb projektjeikhez.
A Flutter a Google mobilalkalmazás-fejlesztő platformja, amelyet gyors, natív jellegű mobilalkalmazások készítésére használnak. A csapkodó alkalmazások ugyanabban a kódban futtathatók iOS-en és Androidon is, és mindkét platformon ugyanazt a felhasználói felületet mutatják be.
A Flutter a Dart programozási nyelvet használja, amelyet a felhasználói felület összes moduljának és egy mobilalkalmazás üzleti logikájának kódolására használnak.
A Google kijelölt célja a Flutter létrehozása érdekében olyan felhasználói felület eszköztár biztosítása, amely felhasználható mobilalkalmazások létrehozására, amelyek 1) a fejlesztőknek teljes irányítást biztosítanak az alkalmazás minden rétege felett, 2) szinte natív teljesítményt nyújtanak és 3) ugyanúgy néznek ki és működnek minden támogatott platformon.
A Flutter a Dart nyelvet használja, amely egy erőteljes, de megközelíthető programozási nyelv. Ha ismeri az alapvető OOP-fogalmakat, és van némi programozási tapasztalata, akkor könnyedén megtanulhatja a Dart alapjait, és akár két hét alatt elkezdheti az alkalmazások építését a Flutterrel.
A hibrid mobilalkalmazás-fejlesztés új izgalmas belépőjeként a Flutter mindenképpen érdemes megtanulni. Könnyű elindítani és elég hatékony ahhoz, hogy a legtöbb alkalmazáshoz használható legyen. Már olyan vállalkozások kritikus alkalmazásait táplálja, mint a Google, az Alibaba és a Nubank.
A Flutter stabil és aktív projekt, 2020 májusában jelentette meg a v1.7 verziót, jelentős teljesítménybeli fejlesztésekkel. Olyan cégek használják, mint a Google és az Alibaba, hogy működtessék fő üzleti mobilalkalmazásaik részét. Elég ésszerű azt várni, hogy a Flutter a hibrid mobilalkalmazások fejlesztésének jövője lesz.