Flutter (software)

Flutter è un framework open-source creato da Google per la creazione di interfacce native per iOS, Android, Linux, macOS e Windows oltre a essere il metodo principale per la creazione di applicazioni per Google Fuchsia.

Flutter è un framework open-source creato da Google per la creazione di interfacce native per iOS, Android, Linux, macOS e Windows oltre a essere il metodo principale per la creazione di applicazioni per Google Fuchsia.

Con la versione 1.9, Google ha introdotto il supporto per le applicazioni web e per i siti statici scritti in linguaggio Dart, permettendo così l'ampliamento della lista delle piattaforme supportate.

Storia

La prima versione di Flutter conosciuta aveva come nome "Sky" e girava su Android. È stato presentato al summit per sviluppatori Dart del 2015, con l'obiettivo di renderizzare costantemente a 120 fps. Durante il Keynote del Google Developer Days a Shanghai, Google ha annunciato Flutter Release Preview 2, che è stato l'ultima grande pubblicazione di una versione prima di Flutter 1.0. Il 4 dicembre 2018, Flutter 1.0 è stato pubblicato all'evento Flutter Live, e ha rappresentato la prima versione stabile del framework. Il 3 marzo 2021 è stata pubblicata la versione 2.0 di Flutter, che consente agli sviluppatori di generare in maniera stabile applicazioni multipiattaforma (Android, iOS, Windows, macOS, Linux, Web).

Architettura del framework

I componenti principali di Flutter sono:

La piattaforma Dart

Il motore grafico di Flutter

La Foundation library

I Design-specific widget

Flutter engine

Flutter engine è scritto principalmente in C++, fornisce supporto per il rendering a basso livello utilizzando la libreria grafica di Google, Skia Graphics. Inoltre, si interfaccia con SDK della piattaforma specifica come quelli di Android o iOS. Una particolarità molto apprezzata del Flutter engine, grazie al codice scritto in Dart, è quella di poter effettuare un "hot-reload" dell'applicazione dove la modifica del codice viene iniettata immediatamente all'interno dell'applicazione così da visualizzare all'istante le modifiche effettuate senza un riavvio completo o un cambio di stato.

Foundation library

La Foundation library, scritta in Dart, fornisce classi e funzioni di base utilizzate per costruire applicazioni che utilizzano Flutter, come le API per comunicare con l'engine.

Widget

La progettazione dell'interfaccia utente in Flutter prevede l'assemblaggio e/o la creazione di vari widget. Un widget in Flutter rappresenta una descrizione immutabile dell'interfaccia utente; grafici, testo, forme e animazioni vengono creati utilizzando i widget. È possibile creare widget più complessi combinando molti più semplici. Sul sito della documentazione di Flutter è possibile consultare tutti i Widgets disponibili.

Design-specific widget

Il framework Flutter contiene due set di widget conformi a specifici linguaggi di progettazione. I widget in stile Material Design implementano il design di Google con lo stesso nome, mentre i widget di Cupertino imitano il design iOS di Apple.

Esempio di Hello World in Flutter

L'importazione del pacchetto (package) Material consente l'uso di classi e widget a tema Material Design. Questo pacchetto è fondamentale per la realizzazione dell'applicativo.

È disponibile anche il pacchetto Cupertino per la realizzazione di UI in stile iOS.

Il widget MaterialApp è l'inizio dell'applicazione, esso permette di impostare il tema, la navigazione tra le pagine e la home page (oltre a tante altre impostazioni).

Pub.dev

Al fine della realizzazione di applicazioni più complesse è, talvolta, necessario sfruttare librerie esterne. A tale scopo, Google, ha messo a disposizione degli utenti il sito pub.dev. Esso è la repository ufficiale per i pacchetti Dart e Flutter, dove sono disponibili sia librerie create e supportare direttamente da Flutter, che dai singoli utenti.

Servizi correlati

Altre voci

A

Android 12

Android 12 (nome in codice Snow Cone) è la dodicesima major release e diciannovesima versione del sistema operativo per dispositivi mobili Android. Pubblicata in versione stabile il 4 ottobre 2021 introducendo la nuova interfaccia Material You, i primi dispositivi a ricevere ufficialmente la…

Leggi la voce →
IOS 17I

IOS 17

iOS 17 (nome in codice DawnSeed) è la diciassettesima versione del sistema operativo iOS, sviluppato da Apple. È stato annunciato alla Worldwide Developers Conference (WWDC) il 5 giugno 2023 e lo stesso giorno è stata pubblicata la prima beta per gli sviluppatori.

Leggi la voce →
InstagramI

Instagram

Instagram è un servizio di rete sociale statunitense che permette agli utenti di scattare foto, applicarvi filtri e condividerle via Internet. Nel 2012 Facebook, Inc. la acquistò per circa 1 miliardo di dollari. L'applicazione web per dispositivi cellulari, sviluppata da Kevin Systrom e Mike…

Leggi la voce →
M

MacOS

macOS (pronunciato in inglese come /mæk oʊ ɛs/), precedentemente chiamato OS X e originariamente Mac OS X, è il sistema operativo sviluppato da Apple per i computer Macintosh.

Leggi la voce →
Mark ZuckerbergM

Mark Zuckerberg

Mark Elliot Zuckerberg (IPA: [mɑɹk ˈɛliət ˈzʌkəɹbɜɹɡ]; White Plains, 14 maggio 1984) è un informatico e imprenditore statunitense, conosciuto per essere uno dei fondatori del social network Facebook.

Leggi la voce →
Android AutoA

Android Auto

Android Auto è uno standard basato su smartphone, sviluppato da Google, per consentire ai dispositivi mobili con il sistema operativo Android (versione 5.0 "Lollipop" e versioni successive) di essere utilizzati in automobili mediante il sistema di infotainment presente nel cruscotto.

Leggi la voce →