Cosa c’è di nuovo in Flutter 3

Flutter 3 rappresenta il culmine del viaggio di Google verso lo sviluppo dell’interfaccia utente multipiattaforma su mobile, desktop e Web e completa la roadmap da un framework incentrato sui dispositivi mobili a un framework multipiattaforma, con la disponibilità del supporto per app desktop macOS e Linux, insieme a miglioramenti all’integrazione di Firebase, nuove funzionalità di produttività e prestazioni e supporto per Apple Silicon. In un altro articolo abbiamo spiegato in breve quali sono i principali vantaggi dello sviluppo su Flutter.

In questo articolo invece vi proponiamo le principli novità che la versione 3 di Flutter ha introdotto:

1) Il percorso verso Flutter 3
2) Introduzione a Flutter 3
3) Firebase e Flutter
4) Flutter Casual Games Toolkit
5) Sponsorizzato da Google, alimentato dalla community


1. Il percorso verso Flutter 3

Flutter è stato avviato come tentativo di rivoluzionare lo sviluppo di app: combinando il modello di sviluppo iterativo del Web con il rendering grafico con accelerazione hardware e il controllo a livello di pixel che in precedenza erano appannaggio dei giochi. Negli ultimi quattro anni dalla versione beta di Flutter 1.0, è stato gradualmente costruito su queste basi, aggiungendo nuove funzionalità del framework e nuovi widget, una maggiore integrazione con le piattaforme sottostanti, una ricca libreria di pacchetti e molti miglioramenti delle prestazioni e degli strumenti

Con la maturazione del prodotto, molti sviluppatori Flutter hanno iniziato a creare app con esso. Oggi ci sono oltre 500.000 app create con Flutter.

Flutter aiuta a creare bellissime app più rapidamente per più piattaforme. Nel più recente studio di Google sugli utenti:

– Il 91% degli sviluppatori ha convenuto che Flutter ha ridotto il tempo necessario per creare e pubblicare un’app.
– L’85% degli sviluppatori ha convenuto che Flutter ha reso la propria app più bella di prima.
– L’85% ha convenuto che ha consentito loro di pubblicare la propria app per più piattaforme rispetto a prima.

In un recente post sul blog di Sonos in cui discuteva della loro esperienza di configurazione rinnovata, hanno sottolineato il secondo di questi:

“Non è un’esagerazione dire che Flutter ha sbloccato un grado di “premium” diverso da qualsiasi cosa il nostro team avesse offerto prima. La cosa più importante per i nostri progettisti, la facilità con cui è possibile creare nuove interfacce utente significa che il nostro team dedica meno tempo a dire “no” alle specifiche e più tempo a ripeterle. Se vi sembra che ne valga la pena, vi consigliamo di provare Flutter: noi siamo contenti di averlo fatto.”

2. Introduzione a Flutter 3

Con Flutter 3, si possono creare esperienze straordinarie per sei piattaforme da un’unica base di codice, offrendo agli sviluppatori una produttività senza precedenti e consentendo alle startup di portare nuove idee nel mercato complete sin dal primo giorno.

Nelle versioni precedenti, sono stati integrati iOS e Android con il supporto Web e Windows e ora Flutter 3 aggiunge il supporto stabile per le app macOS e Linux. L’aggiunta del supporto della piattaforma richiede più del rendering dei pixel: include nuovi modelli di input e interazione, supporto per la compilazione e la creazione, accessibilità e internazionalizzazione e integrazione specifica della piattaforma. L’ obiettivo è dare la flessibilità necessaria per sfruttare appieno il sistema operativo sottostante condividendo tutta l’interfaccia utente e la logica necessarie.

Su macOS, vi è stato un investimento nel supporto di Intel e Apple Silicon, con il supporto Universal Binary che consente alle app di impacchettare eseguibili eseguiti in modo nativo su entrambe le architetture. Su Linux, Canonical e Google hanno collaborato per offrire un’opzione di sviluppo altamente integrata e all’avanguardia.

Flutter 3 migliora anche molti dei fondamentali, con prestazioni migliorate, supporto per Material You e aggiornamenti della produttività.

Oltre al lavoro sopra menzionato, con questa versione Flutter è completamente nativo su Silicon Apple per lo sviluppo. Sebbene Flutter sia compatibile con i dispositivi Apple con tecnologia M1 sin dal loro rilascio, Flutter ora sfrutta appieno il supporto di Dart per il Silicon Apple, consentendo una compilazione molto più rapida su dispositivi basati su M1 e supporto per binari universali per app macOS.

Il lavoro per Material Design 3 è in gran parte completo in questa versione, consentendo agli sviluppatori di sfruttare un sistema di progettazione adattabile e multipiattaforma che offre schemi di colori dinamici e componenti visivi aggiornati:

3. Firebase e Flutter

Naturalmente, c’è molto di più nella creazione di un’app rispetto al semplice un framework per l’interfaccia utente. Gli editori di app hanno bisogno di una suite completa di strumenti per creare, rilasciare e utilizzare le tue app, inclusi servizi come autenticazione, archiviazione dati, funzioni cloud e test dei dispositivi. Esistono numerosi servizi che supportano Flutter, inclusi Sentry, AppWrite e AWS Amplify.

L’offerta di Google per i servizi di app è Firebase e gli studi di benchmarking degli sviluppatori di SlashData mostrano che il 62% degli sviluppatori Flutter utilizza Firebase nelle proprie app. Quindi, nelle ultime versioni, il team di Flutter ha lavorato con Firebase per espandere e integrare meglio Flutter come integrazione di prima classe. Ciò ha incluso il portare i plug-in Firebase per Flutter alla versione 1.0, l’aggiunta di documentazione e strumenti migliori e nuovi widget come l’interfaccia utente FlutterFire che fornisce agli sviluppatori un’interfaccia utente riutilizzabile per le schermate di autenticazione e profilo.

Con la nuova versione viene annunciato il passaggio dell’integrazione Flutter/Firebase a una parte centrale completamente supportata dell’offerta Firebase e si potrà contare sull’evoluzione del supporto Firebase per Flutter in sintonia con Android e iOS.

Inoltre, sono stati apportati importanti miglioramenti per supportare le app Flutter utilizzando Crashlytics, il popolare servizio di segnalazione degli arresti anomali in tempo reale di Firebase. Con gli aggiornamenti del plug-in Flutter Crashlytics, si puo’ tenere traccia degli errori irreversibili in tempo reale, offrendo lo stesso insieme di funzionalità disponibili per altri sviluppatori iOS e Android. Ciò include avvisi e metriche importanti come “utenti senza arresti anomali” che aiutano a mantenere il controllo della stabilità della tua app. La pipeline di analisi di Crashlytics è stata aggiornata per migliorare il clustering degli arresti anomali di Flutter, rendendo più veloce il triage, la definizione delle priorità e la risoluzione dei problemi.

4. Flutter Casual Games Toolkit

Per la maggior parte degli sviluppatori, Flutter è un framework per app.

Ma c’è anche una comunità in crescita intorno allo sviluppo di giochi casuali, che sfrutta il supporto grafico con accelerazione hardware fornito da Flutter insieme a motori di gioco open source come Flame. Si vuole facilitare l’avvio degli sviluppatori di giochi casuali, quindi è stato creato il Casual Games Toolkit, che fornisce uno starter kit di modelli e best practice insieme a crediti per annunci e servizi cloud.

5. Sponsorizzato da Google, alimentato dalla community

Una cosa che amiamo di Flutter è che non è solo un prodotto Google, è un prodotto “per tutti”. Open source significa che tutti possono partecipare e avere un interesse nel suo successo, sia contribuendo con nuovo codice o documentazione, creando pacchetti che conferiscono alla struttura di base nuovi superpoteri, scrivendo libri e corsi di formazione che insegnano ad altri, o aiutando a organizzare eventi e gruppi di utenti .