Flutter pentru dezvoltare web: beneficii, amenințări, aplicații
Publicat: 2020-05-15În 2022, Flutter, kit-ul de dezvoltare software creat de Google, a depășit oficial cel mai înverșunat concurent al său, React Native, devenind noul lider în tehnologia multiplatformă. Potrivit rapoartelor Google, peste 100.000 de aplicații bazate pe Flutter au fost lansate publicului. În ciuda popularității sale în creștere, Flutter este încă cel mai bine cunoscut ca instrument de dezvoltare mobilă multiplatformă (Android și iOS). Între timp, doar câțiva experți din industrie știu că Flutter poate fi folosit și în aplicații web! Aflați posibilitățile, aplicațiile și riscurile asociate cu Flutter pentru dezvoltarea web și descoperiți ce valoare poate adăuga afacerii dvs.
Flutter devine una dintre cele mai interesante soluții disponibile pe piață nu numai datorită rentabilității și eficienței în timp. Cu fiecare actualizare, performanța Flutter este din ce în ce mai aproape de soluțiile native. Desigur, multe companii aleg Flutter pentru web ca un plus la produsul lor mobil, cu un accent puternic pe creșterea numărului de puncte de contact pentru clienți. Dar merită să luați în considerare Flutter pentru web numai pentru caracteristicile sale individuale?
Desigur ca este! Flutter permite dezvoltarea rapidă a aplicațiilor web cu interfețe complexe și unice și este nemaipomenit atunci când vine vorba de furnizarea de experiențe asemănătoare dispozitivelor mobile. Ai nevoie de exemple? Doar verificați instrumentul electrizant de implicare a clienților PAJO, creat cu Flutter pentru web de echipa noastră.
Să trecem direct la subiect: care sunt beneficiile, aplicațiile și riscurile Flutter pentru web? Este Flutter bun pentru dezvoltarea web? Citiți mai multe pentru a afla!
Flutter pentru web: să începem cu elementele de bază
Să începem cu informațiile de bază:
Ce: Flutter este un cadru Google care permite dezvoltatorilor să creeze aplicații mobile, web, desktop și încorporate folosind o bază de cod partajată.
Când: Prima versiune stabilă a Flutter a fost lansată la sfârșitul anului 2018.
Și de ce: Google a creat Flutter ca răspuns la bugetele topite ale aplicațiilor mobile și la popularitatea în creștere a React Native, devenind principalul său competitor.
Acum să trecem la câteva informații tehnice mai specifice.
Flutter atrage atenția asupra Dart, un limbaj orientat pe obiecte de la Google care, potrivit multor specialiști în domeniu, este viitorul dezvoltării mobile, web și desktop. În comparație cu JavaScript (folosit de principalul său concurent, React Native), Dart este complet orientat pe obiecte și puternic tastat. Ce înseamnă asta pentru afacerea ta? Codul livrat în Dart este mult mai rezistent la erori și mult mai ușor de întreținut, chiar și pentru mulți ani într-o echipă în schimbare. Fără îndoială, limbajul de programare Flutter este unul dintre cele mai mari avantaje ale sale.
Flutter pentru dezvoltare web
Știați că funcția de dezvoltare web din Flutter este relativ nouă? În urmă cu câțiva ani, Google a condus un proiect de cercetare numit Hummingbird. Grupul de dezvoltatori Google implicați în Hummingbird încerca să găsească o modalitate de a genera aplicații web din același cod Flutter care a fost folosit în aplicațiile iOS și Android.
Efectele acestui proiect au contribuit în mare măsură la dezvoltarea cadrului. Deși a durat ceva timp, în martie 2021, Google a anunțat că Flutter pentru web este complet stabil și gata de utilizare în proiecte comerciale. Un cod, o tehnologie, mai multe păsări dintr-o singură piatră.
Cum funcționează Flutter pentru web, unul dintre cele mai noi proiecte Google? Pe scurt, de la lansarea din 2021, dezvoltatorii pot compila codul Dart existent într-un produs web – folosind același cadru Flutter pe care îl folosesc pentru a dezvolta aplicații mobile multiplatforme. În acest context, web-ul este doar un alt dispozitiv țintă pentru aplicația mobilă – și nu este nevoie să implicați niciun alt dezvoltator web.
Beneficiile Flutter pentru web
Care sunt principalele beneficii ale Flutter pentru web? Cel mai important, Google își crește implicarea în proiectul SDK, așa cum demonstrează îmbunătățirile și lansările sistematice (aproape 20 de lansări în 2022!). În ciuda istoriei sale relativ scurte, Flutter a depășit deja multe probleme de maturitate timpurie. Care sunt celelalte cele mai semnificative avantaje ale Flutter Web?
Vrei să fii la curent cu cele mai importante actualizări Flutter?
Aboneaza-te la newsletter-ul nostru1. Flutter pentru web reduce costurile de dezvoltare
Cu Flutter pentru web, trei aplicații sunt create folosind o bază de cod , într-o echipă conectată tehnologic, într-un singur ritm. Clienții care își dezvoltă aplicațiile cu Flutter nu trebuie să caute furnizori a trei tehnologii diferite și apoi să își sincronizeze munca. Nu este nevoie să duplicați, de exemplu, aceeași funcție de plată sau autorizarea rețelelor sociale. Înseamnă asta direct economii triple? Nu chiar!
Desigur, Flutter reduce semnificativ costurile de dezvoltare. Cu toate acestea, acest lucru nu înseamnă că dezvoltarea de aplicații multiplatformă este aceeași cu dezvoltarea de aplicații native. Este adesea puțin mai complicat să oferi o anumită funcționalitate pentru multiplatformă. De obicei, există un factor de multiplicare multiplatformă de aproximativ 1,2-1,5. Ce inseamna asta? Dacă o funcționalitate necesită X ore de dezvoltare pentru o singură platformă, este nevoie de (1,2-1,5) * X atunci când vine vorba de cross-platform. Totuși, x1,5 comparativ cu x3 ar putea fi un caz câștigător pentru bugetul tău.
2. Scalare ușoară și verificare eficientă a ideilor
Eficiența costurilor și a timpului face din Flutter o alegere excelentă pentru PoC și verificarea ideii de produs. În câteva săptămâni, puteți dezvolta o aplicație complet operațională pe care o puteți lansa cu ușurință în magazinele de aplicații și o puteți distribui prin web. După potențialul succes, puteți lua în considerare scalarea aplicațiilor dvs. mobile și web, de exemplu, extinzând aplicațiile mobile pe mai multe platforme la aplicațiile native.
Mai mulți giganți din industrie, precum Airbnb, au urmat această cale. După succesul aplicațiilor sale mobile multiplatforme, Airbnb a decis să treacă la soluții native, care permit și mai multă libertate în adaptarea produsului la grupul țintă.
3. Proces de întreținere simplificat
Ce se întâmplă când aplicația dvs. reușește în sfârșit? Intră în întreținere! Și cooperarea cu un specialist Dart/Flutter este mult mai ușor și eficient din punct de vedere al costurilor decât angajarea a trei dezvoltatori doar pentru a menține codul. Ca să nu mai vorbim că orice dezechilibru în abilitățile dezvoltatorilor generează variații în ritmul de lucru.
Abilitățile unei echipe de dezvoltare sunt, de asemenea, esențiale, având în vedere aspectul și sentimentul comun pe diferite platforme. Când decideți să dezvoltați trei proiecte, forma lor finală depinde foarte mult de abilitățile dezvoltatorului și de atitudinea în interfața de utilizare. Când tipul cu iOS preferă colțurile rotunjite, iar cel cu Android nu este atât de pasionat de ele, se poate dovedi că aceste două aplicații vor diferi în ceea ce privește modul în care vă influențează strategia de produs.
4. Experiențe spectaculoase centrate pe aplicații
Potrivit fondatorilor Flutter Web, în acest moment, Flutter este un instrument perfect pentru încorporarea experiențelor interactive. Ca cadru UI, Flutter poate oferi servicii centrate pe aplicații pentru site-uri web – și, prin urmare, este o soluție perfectă pentru aplicațiile web progresive, aplicațiile cu o singură pagină și îmbunătățirea aplicațiilor mobile Flutter existente. Puteți citi mai multe despre el în secțiunea de oportunități de mai jos. Dar mai întâi, să discutăm în sfârșit despre cele mai critice riscuri Flutter web.
Amenințările Flutter pentru web
După cum am menționat deja, Flutter Web este un proiect relativ nou, îmbunătățit constant de experții multi-platformă. Când echipa noastră Flutter a întocmit o listă de riscuri potențiale legate de dezvoltarea web Flutter în 2021, am observat 14 probleme. Astăzi, lista riscurilor Flutter Web a scăzut cu o treime. Cu toate acestea, unele probleme, cum ar fi problemele de SEO sau lipsa suportului pentru unele browsere, trebuie încă rezolvate. Care sunt cele mai semnificative dezavantaje ale Flutter pentru web în 2022?
1. Excepții ale aplicațiilor web ale Flutter pentru web
Poate că nu este un dezavantaj direct Flutter Web, ci mai degrabă o declinare a răspunderii care merită menționată. Universurile aplicațiilor Android și iOS sunt foarte asemănătoare, iar baza de cod în majoritatea cazurilor este 95-100% aceeași. Cu toate acestea, este posibil să nu se aplice pentru versiunea de browser!
Un sertar pentru foi de jos, un meniu cu fila de jos sau carusele orizontale sunt modele excelente de UX pentru mobil, care nu se aplică bine pe web. Adesea, trebuie să creați excepții doar pentru aplicația web. Designul arhitectural trebuie adesea să fie complet diferit pe mobil și pe web. La începutul lucrării, este bine să organizăm o masă rotundă între designeri și dezvoltatori. Lasă-i să-și împărtășească punctul de vedere și să încerce să ajungă la un consens, mai ales dacă îți pasă de bugetul și programul tău.
2. Probleme cu optimizarea pentru motoarele de căutare (SEO)
Pentru a spune clar, Flutter Web nu acceptă SEO. Cum explică creatorii framework-ului incompatibilitatea SEO a aplicațiilor web create cu Flutter?
Flutter web prioritizează performanța, fidelitatea și consistența. Aceasta înseamnă că rezultatul aplicației nu se aliniază cu ceea ce au nevoie motoarele de căutare pentru a indexa corect. Pentru conținutul web static sau asemănător unui document, vă recomandăm să utilizați HTML, așa cum facem pe flutter.dev, dart.dev și pub.dev. De asemenea, ar trebui să vă gândiți să separați experiența principală a aplicației – creată în Flutter – de pagina de destinație, conținutul de marketing și conținutul de ajutor – creat folosind HTML optimizat pentru motoarele de căutare.
Sursa: Întrebări frecvente web de Flutter.dev
Potrivit Stack Overflow, compatibilitatea cu SEO este unul dintre următoarele obiective ale echipei Flutter. Cu toate acestea, în acest moment, dezvoltatorii care doresc să optimizeze aplicația web în ceea ce privește SEO trebuie să folosească biblioteci suplimentare.
3. F o reîncărcare la cald în Flutter pentru web
Reîncărcarea la cald este unul dintre cele mai recunoscute beneficii ale Flutter pentru dezvoltarea mobilă. Cu această caracteristică, dezvoltatorii pot previzualiza modificările din front și backend imediat - și pot face remediile necesare într-un stadiu incipient al producției. Din păcate, reîncărcarea la cald nu este încă compatibilă cu Flutter Web.
Din fericire, există o anumită alternativă la reîncărcarea la cald în Flutter pentru web: repornirea la cald. Repornirea la cald permite previzualizarea modificărilor fără a fi nevoie să relansați aplicația web. Singura (și cea mai dureroasă) diferență este că repornirea la cald, spre deosebire de reîncărcarea la cald, pierde starea aplicației - reducând potențial flexibilitatea în introducerea modificărilor de dezvoltare.
4. Compatibilitate limitată cu unele browsere
Potrivit dezvoltatorilor Flutter, aplicațiile web Flutter pot rula pe patru cele mai populare browsere:
- Crom
- Safari
- Margine
- Firefox
Teoretic, ar trebui să fii sigur că aplicația ta web va funcționa eficient, indiferent de browser pe care îl aleg utilizatorii tăi. Dar cum funcționează în practică? Unii dezvoltatori Flutter raportează probleme cu Safari și se plâng de necesitatea de a efectua soluții care necesită timp pentru mai multe funcții.
Flutter Web se confruntă în continuare cu unele dificultăți minore, cum ar fi probleme cu SEO, compatibilitate limitată cu Safari sau biblioteci lipsă. Dar, în același timp, nu există nicio îndoială că Flutter devine mai eficient și aproape de funcționalitatea completă cu fiecare actualizare. Și nu este exagerat să spunem că într-un an, toate aceste probleme pot fi de domeniul trecutului!
Aplicații Flutter pentru dezvoltarea web
Acum să trecem la subiect: cine poate beneficia cel mai mult de pe urma Flutter pentru dezvoltarea web? Creatorii Flutter indică trei cazuri de utilizare ideale pentru Flutter Web:
Aplicații web progresive
De la lansarea versiunii stabile Flutter 2 în 2021, dezvoltatorii Flutter au reușit să creeze aplicații web progresive (PWA): aplicații web nu numai capabile să funcționeze offline, ci și să imite funcționalitatea dispozitivului mobil în timp ce rulează prin browser.
Mai simplu spus, PWA-urile sunt pagini web care pot fi instalate pe orice dispozitiv pentru a oferi o experiență nativă – și, dimpotrivă, aplicațiilor dedicate iOS și Android, pot fi folosite pe orice dispozitiv.
PWA sunt adesea folosite de companiile care furnizează produse pentru un public țintă largi, doresc să ofere o experiență de utilizator impecabilă în toate punctele de contact ale consumatorilor și trebuie să profite de fiecare șansă de a interacționa cu un potențial utilizator. Exemple? Starbucks, Flipboard, jocul 2048. Pun pariu că ați folosit cel puțin una dintre aceste aplicații captivante!
Aplicații cu o singură pagină
Facebook, Gmail, Google Maps, Spotify – toate aceste aplicații populare au cel puțin un lucru crucial în comun. Acestea funcționează fără reîncărcări ale paginilor. În timp ce interacționează cu o aplicație cu o singură pagină, utilizatorii nu trebuie să aștepte să se încarce o nouă pagină – aceasta este acolo de la început împreună cu conținutul relevant.
SPA-urile sunt receptive, relativ ușor de codat, optimizat și întreținut. Nu în ultimul rând, ele pot fi dezvoltate rapid cu Flutter – și servesc ca un produs minim viabil de calitate excelentă.
Doriți să citiți mai multe despre Progressive Web and Single Page Apps? Asigurați-vă că citiți articolul nostru despre alegerea tipului potrivit de aplicație pentru afacerea dvs.!
Aplicațiile mobile Flutter existente pot fi transformate cu ușurință în Flutter pentru web
Adăugarea suportului web la un proiect mobil existent bazat pe Flutter este rapidă și ușoară: necesită crearea unui director web și... apăsarea butonului Run! Desigur, pentru a asigura o performanță impecabilă, este esențial să faceți aplicația web receptivă și ușor de navigat. Dar, în comparație cu construirea unei aplicații de la zero, adăugarea versiunii web la aplicația mobilă existentă în Flutter necesită într-adevăr o fracțiune din efort.
Merită încercat Flutter pentru Web?
Merită încercat Flutter pentru Web? Evident, ar trebui să răspundeți singur la această întrebare. Alegerea cadrului potrivit pentru produsul dvs. depinde de mai mulți factori de afaceri și tehnologici, cum ar fi misiunea, viziunea, bugetul, dimensiunea sau tehnologia companiei. Cu toate acestea, în unele cazuri specifice, merită cel puțin să luați în considerare utilizarea Flutter Web.
În primul rând, Flutter Web creează oportunități fără precedent pentru start-up-uri în stadiu incipient. Imaginează-ți că tocmai ai venit cu o idee genială de produs, ți-ai definit obiectivele de afaceri, ai efectuat o analiză competitivă. Acum trebuie să vă verificați MVP-ul cât mai curând posibil - înainte ca momentul să dispară. În acest scenariu, alegerea Flutter pentru dezvoltarea web este cu siguranță o alegere sigură, eficientă în timp și rezonabilă.
În al doilea rând, flexibilitatea limbajului de programare Dart face ca Flutter Web să fie o alegere excelentă pentru îmbunătățirea produsului digital. Flutter permite dezvoltarea rapidă a aplicațiilor pe multe platforme diferite, sporind vizibilitatea produsului și accesibilitatea acestuia pentru utilizatori.
Dacă găsiți chiar și puțin din situația dvs. de afaceri în oricare dintre scenariile de mai sus, cu siguranță merită să vă interesați de Flutter Web.
Și când nu merită să te gândești la dezvoltarea unei aplicații web folosind Flutter? Chiar și creatorii cadrului admit că, în acest moment, nu orice pagină web are sens în Flutter:
(…) Flutter nu este potrivit pentru site-urile web statice cu conținut bazat pe flux bogat în text. De exemplu, articolele de blog beneficiază de modelul centrat pe documente pe care este construit web-ul, mai degrabă decât de serviciile centrate pe aplicații pe care le poate oferi un cadru de interfață de utilizare precum Flutter. Cu toate acestea, puteți folosi Flutter pentru a încorpora experiențe interactive în aceste site-uri web. cercetarea bibliotecilor disponibile ar trebui să preceadă fiecare proiect acolo.
Sursa: Întrebări frecvente web de Flutter.dev
Orice decizie de afaceri ar trebui să fie precedată de cercetări amănunțite și consultare cu mai mulți experți din industrie.
Viitorul strălucit (anticipat) al Flutter pentru web
În acest moment, alegerea Flutter pentru fiecare proiect web poate să nu fie cea mai bună idee. Cu toate acestea, anticipez un viitor din ce în ce mai luminos pentru acest cadru care evoluează rapid. De ce?
Niciodată până acum utilizatorii nu au fost atât de împrăștiați între platforme. Dispozitivele mobile și browserele web sunt doar vârful aisbergului. Oamenii folosesc aplicații în mașini, ceasuri și televizoare.
Prin urmare, este necesar să se simplifice procesul și să se reducă costurile de producție de software. O bază de cod pentru dezvoltarea web și mobilă este deja un model comun, iar Flutter pentru web este un exemplu excelent.
Multă vreme, am considerat Flutter Web ca pe o tehnologie în curs de dezvoltare. Munca mea recentă m-a făcut să mă răzgândesc. Flutter îmi amintește de un tânăr adult care stă în fața unui viitor strălucit. Pare o alegere atractivă pentru idei cu bugete mici și termene limită scurte. Flutter este o alegere perfectă pentru cei care doresc să-și verifice ideile rapid și cu cheltuieli reduse și pentru cei care au o idee și răspund nevoilor pieței.