Flutter (software): differenze tra le versioni
Nessun oggetto della modifica |
m →Esempio di Hello World in Flutter: Eliminato una riga vuota |
||
(15 versioni intermedie di 14 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Software |
{{Software |
||
|UltimaVersioneBeta = Release Preview 2 (v0.8.2) |
|||
|DataUltimaVersioneBeta = Settembre 2018 |
|||
|SistemaOperativo = Windows |
|SistemaOperativo = Windows |
||
|SistemaOperativo2 = MacOS |
|SistemaOperativo2 = MacOS |
||
|SistemaOperativo3 = Linux |
|SistemaOperativo3 = Linux |
||
|Genere = Framework |
|Genere = Framework |
||
|Genere2 = |
|Genere2 = Software development kit |
||
}} |
}} |
||
'''Flutter''' è un [[framework]] open-source creato da [[Google (azienda)|Google]] per la creazione di interfacce native per [[iOS]] |
'''Flutter''' è un [[framework]] open-source creato da [[Google (azienda)|Google]] per la creazione di interfacce native per [[iOS]], [[Android]], [[Linux]], [[macOS]] e [[Microsoft Windows|Windows]] oltre ad essere il metodo principale per la creazione di applicazioni per [[Google Fuchsia]]. |
||
Con la versione 1.9, Google introduce il supporto per le applicazioni web e per siti statici scritti in linguaggio Dart. Così, con questo aggiornamento, si è ampliata la lista delle piattaforme supportate. |
Con la versione 1.9, Google introduce il supporto per le [[Applicazione web|applicazioni web]] e per siti statici scritti in linguaggio [[Dart (linguaggio)|Dart]]. Così, con questo aggiornamento, si è ampliata la lista delle piattaforme supportate. |
||
== Storia == |
== Storia == |
||
La prima versione di Flutter fu conosciuta come "Sky" e girava su [[Android]]. Presentato al summit per sviluppatori Dart del 2015, con l' |
La prima versione di Flutter fu conosciuta come "Sky" e girava su [[Android]]. Presentato al summit per sviluppatori Dart del 2015, con l'obiettivo di renderizzare costantemente a 120 [[Frequenza dei fotogrammi|fps]]. Durante il Keynote del Google Developer Days a Shanghai, Google annuncia Flutter Release Preview 2 il quale è stato l'ultimo grande rilascio prima di Flutter 1.0.<ref>{{Cita web|url=https://www.apptunix.com/whats-new-in-googles-flutter-for-mobile-app-developers|editore=Apptunix|titolo=Google Announced Flutter Release Preview 2|accesso=1 marzo 2019|urlarchivio=https://web.archive.org/web/20180925220106/https://www.apptunix.com/whats-new-in-googles-flutter-for-mobile-app-developers/|dataarchivio=25 settembre 2018|urlmorto=sì}}</ref> Il 4 dicembre 2018, Flutter 1.0 è stato rilasciato all'evento ''Flutter Live'', e rappresenta la prima versione "stabile" del framework. Il 3 marzo 2021 viene rilasciata la versione Flutter 2.0<ref>{{Cita web|url=https://developers.googleblog.com/2021/03/announcing-flutter-2.html|titolo=Announcing Flutter 2|sito=Google Developers Blog|lingua=en|accesso=2021-03-08}}</ref> che consente agli sviluppatori di generare in maniera stabile applicazioni [[multipiattaforma]] (Android, iOS, Windows, macOS, Linux, Web). |
||
== Architettura Framework == |
== Architettura Framework == |
||
Riga 29: | Riga 27: | ||
La Foundation library, scritta in [[Dart (linguaggio)|Dart]], fornisce classi e funzioni di base utilizzate per costruire applicazioni che utilizzano Flutter, come le API per comunicare con l'engine. |
La Foundation library, scritta in [[Dart (linguaggio)|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<ref>{{Cita web|url=https://flutter.dev/docs/development/ui/widgets|titolo=Widget catalog|sito=flutter.dev|lingua=en|accesso=2019-10-02}}</ref> di Flutter è possibile consultare tutti i Widgets disponibili. |
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<ref>{{Cita web|url=https://flutter.dev/docs/development/ui/widgets|titolo=Widget catalog|sito=flutter.dev|lingua=en|accesso=2019-10-02}}</ref> di Flutter è possibile consultare tutti i Widgets disponibili. |
||
=== Design-specific |
=== 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. |
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 |
== Esempio di Hello World in Flutter== |
||
<syntaxhighlight lang="dart" line="1"> |
<syntaxhighlight lang="dart" line="1"> |
||
import 'package:flutter/material.dart'; |
import 'package:flutter/material.dart'; |
||
Riga 63: | Riga 61: | ||
} |
} |
||
</syntaxhighlight> |
</syntaxhighlight> |
||
<br /> |
|||
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. |
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. |
È disponibile anche il pacchetto Cupertino per la realizzazione di [[Interfaccia utente|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). |
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). |
||
Riga 72: | Riga 69: | ||
== Note == |
== Note == |
||
<references/> |
<references/> |
||
== Altri progetti == |
|||
{{interprogetto}} |
|||
== Collegamenti esterni == |
== Collegamenti esterni == |
Versione attuale delle 21:42, 30 nov 2024
Flutter software | |
---|---|
Genere | Framework (non in lista) Software development kit (non in lista) |
Sviluppatore | Google, Jonah Williams, Adam Barth, Greg Spencer e Ian Hickson |
Data prima versione | 23 ottobre 2014 |
Ultima versione | 3.24.5 (13 novembre 2024) |
Sistema operativo | Microsoft Windows macOS Linux |
Linguaggio | Skia Graphics Engine Dart C++ |
Licenza | BSD 3-clausole (licenza libera) |
Sito web | flutter.dev/ |
Flutter è un framework open-source creato da Google per la creazione di interfacce native per iOS, Android, Linux, macOS e Windows oltre ad essere il metodo principale per la creazione di applicazioni per Google Fuchsia.
Con la versione 1.9, Google introduce il supporto per le applicazioni web e per siti statici scritti in linguaggio Dart. Così, con questo aggiornamento, si è ampliata la lista delle piattaforme supportate.
Storia
[modifica | modifica wikitesto]La prima versione di Flutter fu conosciuta come "Sky" e girava su Android. 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 annuncia Flutter Release Preview 2 il quale è stato l'ultimo grande rilascio prima di Flutter 1.0.[1] Il 4 dicembre 2018, Flutter 1.0 è stato rilasciato all'evento Flutter Live, e rappresenta la prima versione "stabile" del framework. Il 3 marzo 2021 viene rilasciata la versione Flutter 2.0[2] che consente agli sviluppatori di generare in maniera stabile applicazioni multipiattaforma (Android, iOS, Windows, macOS, Linux, Web).
Architettura Framework
[modifica | modifica wikitesto]I componenti principali di Flutter sono:
- Dart Platform
- Flutter engine
- Foundation library
- Design-specific widgets
Flutter engine
[modifica | modifica wikitesto]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
[modifica | modifica wikitesto]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
[modifica | modifica wikitesto]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[3] di Flutter è possibile consultare tutti i Widgets disponibili.
Design-specific widget
[modifica | modifica wikitesto]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
[modifica | modifica wikitesto]import 'package:flutter/material.dart';
void main() => runApp(HelloWorldApp());
class HelloWorldApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Hello World App',
theme: ThemeData(
primaryColor: Colors.red[400],
accentColor: Colors.yellow,
fontFamily: "Roboto",
),
home: Scaffold(
appBar: AppBar(
title: Text('App Bar Title'),
),
body: Center(
child: Text('Hello World'),
),
),
);
}
}
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).
Note
[modifica | modifica wikitesto]- ^ Google Announced Flutter Release Preview 2, su apptunix.com, Apptunix. URL consultato il 1º marzo 2019 (archiviato dall'url originale il 25 settembre 2018).
- ^ (EN) Announcing Flutter 2, su Google Developers Blog. URL consultato l'8 marzo 2021.
- ^ (EN) Widget catalog, su flutter.dev. URL consultato il 2 ottobre 2019.
Altri progetti
[modifica | modifica wikitesto]- Wikimedia Commons contiene immagini o altri file su Flutter
Collegamenti esterni
[modifica | modifica wikitesto]- (EN) Sito ufficiale, su flutter.dev.
- Flutter (canale), su YouTube.
- (EN) Flutter, su GitHub.
- Repository sorgenti di Flutter, su github.com.