In che modo Flutter Web può ridurre i costi di sviluppo della tua app
Pubblicato: 2020-05-15Ti viene in mente un'idea di prodotto ma hai bisogno di un piano per farlo conoscere al mondo. Per esporre il tuo servizio al maggior numero possibile di utenti, hai bisogno di app mobili e web. Ma la tua breve ricerca è brutale: sebbene tu abbia solo un'idea ristretta , richiede tre diverse app (Android, iOS, Web), tre diversi tipi di specialisti (Kotlin, Swift, JavaScript) e forse anche tre fornitori separati.
Ma non sei il primo ad essere in questa posizione. Anche i creatori di applicazioni come Airbnb, Uber Eats e Discord sono rimasti dove sei ora. Tutti hanno deciso di scegliere una soluzione multipiattaforma. E sembra che nel 2020 il giocatore più importante in questa disciplina sia Flutter.
Cos'è Flutter?
Flutter è un framework Google che ti consente di produrre applicazioni mobili sia per iOS che per Android utilizzando una base di codice. La prima versione stabile di Flutter è stata rilasciata alla fine del 2018. Google ha creato Flutter in risposta ai budget sempre più numerosi delle applicazioni mobili e alla crescente popolarità di React Native, diventandone il principale concorrente.
Flutter attira l'attenzione su Dart, un linguaggio orientato agli oggetti di Google che, secondo molti specialisti di dominio, è il futuro di tutto lo sviluppo mobile, web e desktop. Rispetto al JavaScript utilizzato da React Native, Dart è completamente orientato agli oggetti e fortemente tipizzato. Cosa significa per il tuo business? Il codice fornito in Dart è molto più resistente agli errori e molto più facile da mantenere, anche per molti anni in un team che cambia.
Flutter for Web conquista i browser
Come si traduce tutto questo nel Web? Il 2020 è un anno importante per Flutter perché porta una nuova sfida. Il framework sta per conquistare schermi e browser web più grandi. Negli ultimi due anni, oltre a Flutter, c'è stato un progetto di ricerca chiamato Hummingbird che avrebbe dovuto generare app Web dallo stesso codice Flutter utilizzato dalle app iOS e Android.
Il progetto è maturato e un anno fa il core team lo ha incluso nel framework e attualmente (a maggio 2020) è ancora sul ramo beta. Cosa significa questo? Ancora oggi è possibile realizzare applicazioni web utilizzando Flutter e il team di Google potrebbe annunciarlo come stabile in qualsiasi momento. Un codice, una tecnologia, tre piccioni con una fava . Sembra che il tuo progetto sia perfetto.
Uno scenario per applicazioni multipiattaforma è abbastanza comune. Molte soluzioni popolari e conosciute hanno utilizzato questo modello per risparmiare tempo e denaro. Walmart, Soundcloud e Bloomberg hanno deciso per applicazioni mobili multipiattaforma. Scommetto che hai almeno un'applicazione multipiattaforma sul tuo cellulare.
Curioso dello sviluppo multipiattaforma?
Scopri di più Tuttavia, la possibilità di creare app Web lungo il percorso è qualcosa che ci si è aperto solo pochi mesi fa. Nonostante nessuno dei grandi brand abbia ancora deciso questa mossa, oggi è chiaro che prima o poi sarà un ottimo strumento per startup e PoC veloci.
Vantaggi Flutter per la tua app
Costi di sviluppo ridotti
Utilizzando Flutter per il Web, vengono create tre app utilizzando una base di codice , all'interno di un team tecnologicamente connesso , con un ritmo . Non è necessario cercare fornitori di tre diverse tecnologie e quindi sincronizzare il loro lavoro. Non è necessario duplicare tre volte la stessa funzione di pagamento o autorizzazione dei social media.
Tuttavia, questo non significa che sarai in grado di limitare il numero di esborsi di tre volte. Spesso è un po' più complicato fornire una certa funzionalità per multipiattaforma. Nella mia esperienza, esiste qualcosa come un fattore moltiplicatore multipiattaforma che è uguale a 1,2-1,5. Significa che se una funzionalità richiede X ore di sviluppo per una piattaforma, ci vuole (1.2-1.5) * X quando si tratta di multipiattaforma. Tuttavia, x1.5 rispetto a x3 potrebbe essere un caso vincente per il tuo budget.
Sviluppo più rapido dell'app
Tutto quanto sopra rende il flutter una scelta eccellente per il PoC e la verifica dell'idea del prodotto. In poche settimane puoi ottenere un'applicazione funzionante che puoi facilmente rilasciare negli app store. Dopo un potenziale successo, puoi considerare di ricostruire le app su tecnologie native. Questo percorso è stato seguito da Airbnb. Dopo il successo delle sue app mobili multipiattaforma, nel 2018 hanno deciso di passare alle applicazioni native.
Processo di manutenzione più semplice
Inoltre, tieni a mente cosa accadrà quando la tua domanda avrà finalmente successo. Quando va in manutenzione, è molto più facile mantenere l'app con uno specialista di Dart/Flutter . La tua azienda potrebbe non essere in grado di trovare attività per tre diversi sviluppatori a tempo pieno semplicemente mantenendo il codice. Allo stesso modo, qualsiasi squilibrio nelle loro abilità genererà variazioni nel ritmo di lavoro.
Le competenze di un team di sviluppo sono importanti anche considerando l'aspetto e l'atmosfera condivisi su piattaforme diverse. Lavorando su tre progetti, la loro forma finale dipende fortemente dalle capacità dello sviluppatore e dall'attitudine all'interfaccia utente. Quando il ragazzo iOS preferisce gli angoli arrotondati e quello Android non è così entusiasta di loro, può risultare che queste due applicazioni differiranno nel modo in cui influenzano il marchio del prodotto.
Flutter per i rischi del Web
Sviluppo di problemi tecnologici
Ok, ma ci sono dei rischi o degli svantaggi associati alla scelta di Flutter per il Web? Come sempre, ci sono due lati della storia. Da un punto di vista tecnico, bisogna ricordare che si tratta pur sempre di una tecnologia beta. Quindi non è del tutto stabile e potresti persino incontrare un problema irrisolvibile . Anche il supporto delle librerie Flutter coesistenti è talvolta incompleto. È comune che una libreria funzioni come un incantesimo su dispositivi mobili ma si arresti in modo anomalo sulle applicazioni di rete perché non è ottimizzata per questo. Questo è un problema minore se limitato all'interfaccia utente, ma potrebbe essere problematico se si tratta dell'integrazione principale del servizio di pagamento.

Eccezioni delle applicazioni Web
Un altro problema è che anche se gli universi delle applicazioni Android e iOS sono molto simili e la base di codice nella maggior parte dei casi è uguale al 95-100%, questo potrebbe non applicarsi alla versione del browser. Un cassetto del foglio inferiore, un menu della scheda inferiore o caroselli orizzontali sono ottimi modelli di UX mobile che non si applicano bene al Web. Spesso è necessario creare eccezioni solo per l'app Web . La progettazione architettonica spesso deve essere completamente diversa su dispositivi mobili e web. Proprio all'inizio del lavoro, è bene organizzare una tavola rotonda tra designer e sviluppatori. Lascia che condividano il loro punto di vista e cerchi di raggiungere un consenso, soprattutto se tieni al budget e alle date.
Flutter vs React Native
Ma Flutter for Web è la tua unica scelta? Ovviamente no. La sua alternativa più importante è React Native. React Native è un framework competitivo inventato e supportato da Facebook anni prima di Flutter. Ti consente di fare esattamente la stessa cosa: creare tutte le applicazioni iOS, Android e Web (in modo simile a Flutter per un tempo relativamente breve).

Scopri cosa riserva il futuro per le app mobili
Ricevi il rapporto gratuitamente!Ho passato gli ultimi due anni a lavorare con React Native, recentemente entrando nel mondo Flutter, quindi posso darti qualche consiglio se dovessi prendere una decisione tra quei due. Innanzitutto, non c'è un unico vincitore in questo duello , entrambe le tecnologie sono mature ed entrambe sono ottime come multipiattaforma. Ma ci sono alcune sfumature che possono portare un vantaggio quando si implementa un progetto specifico:
- Se ti interessa particolarmente l'interfaccia utente relativa ai gesti (scorrere, trascinare, estrarre i cassetti, ecc.), Flutter sarà una scelta migliore grazie alla sua architettura e al supporto dei gesti sul lato nativo. RN a volte fatica a fornire buone prestazioni combinate di gesti + animazioni.
- Se il Web è il punto di contatto chiave per la tua attività, seleziona React Native. RN produce un'applicazione browser molto più vicina ai prodotti sviluppati nativi e puoi eseguirne il debug con strumenti nativi. D'altra parte, Flutter per progetti web non si trasferisce al tipico DOM e necessita di adattatori.
- Se la tua applicazione deve essere mantenuta e sviluppata nel corso degli anni (o il team che ci lavora potrebbe cambiare nel tempo), Flutter e Dart potrebbero essere una soluzione migliore.
- Se la tua applicazione presuppone l'uso di meccanismi leggermente più complessi (bluetooth, biometria, geolocalizzazione) o integrazioni esterne (pagamenti, social media), React Native è in circolazione da più tempo e ha uno spettro molto più ampio di librerie in giro. L'ecosistema Flutter for Web cresce ogni mese, ma la ricerca delle biblioteche disponibili dovrebbe precedere ogni progetto.
Vuoi ottenere maggiori informazioni su questi due framework molto popolari? Dai un'occhiata al nostro confronto di React Native e Flutter!
Riassumendo
Mai prima d'ora gli utenti sono stati così dispersi tra le piattaforme. I dispositivi mobili e i browser web sono solo le punte dell'iceberg. Gli utenti utilizzano sempre più applicazioni in automobili, orologi e televisori, mentre anche gli assistenti vocali sono diventati più popolari. Pertanto, è necessario semplificare il processo e ridurre i costi di produzione del software. Una base di codice per lo sviluppo web e mobile è già un modello comune e Flutter for Web è un esempio fantastico.
Crea la tua prossima app con Flutter
Lavoriamo insiemePer molto tempo ho considerato Flutter per il Web una tecnologia nascente. Il mio lavoro recente mi ha fatto cambiare idea e ora sono corretto. Flutter è un giovane adulto in piedi di fronte a un futuro luminoso e vale sicuramente la pena considerare. Sembra essere una scelta interessante per idee con budget ridotti e scadenze brevi. È per chi vuole verificare le proprie idee velocemente e con poca spesa, chi ha un'idea e sta rispondendo alle esigenze del mercato. Questa è esattamente la stessa cosa che ha fatto Flutter con lo sviluppo del software.
Suona promettente?
Ti chiedi se lo sviluppo multipiattaforma sarebbe una buona soluzione per la tua azienda? Contatta il nostro team e ottieni un preventivo sul tuo progetto.