Flutter
eBook - ePub

Flutter

Guida allo sviluppo di app performanti e cross-platform

Carmine Zaccagnino

Partager le livre
  1. 336 pages
  2. Italian
  3. ePUB (adapté aux mobiles)
  4. Disponible sur iOS et Android
eBook - ePub

Flutter

Guida allo sviluppo di app performanti e cross-platform

Carmine Zaccagnino

DĂ©tails du livre
Aperçu du livre
Table des matiĂšres
Citations

À propos de ce livre

Il libro guida lo sviluppatore alla conoscenza di tutti gli aspetti piĂč importanti di Flutter, a partire dalle basi fi no alla creazione di un'app di chat in tempo reale perfettamente funzionante.Uno strumento ideale per tutti coloro che desiderano imparare a sviluppare app crossplatform. Anche chi non ha mai utilizzato il nuovo framework di Google potrĂ  iniziare a programmare sfruttando tutte le potenzialitĂ  che Flutter mette a disposizione degli sviluppatori, come l'hot reload, grazie al quale le modifi che apportate al codice possono essere visualizzate istantaneamente.Nel testo, dopo la presentazione dell'interfaccia grafi ca, vengono illustrati i pacchetti e i plugin indispensabili, l'input/output, la creazione di librerie esterne e molto altro ancora.In appendice, infine, Ăš presente una concisa ma esaustiva presentazione di Dart, il linguaggio utilizzato per programmare con Flutter.

Foire aux questions

Comment puis-je résilier mon abonnement ?
Il vous suffit de vous rendre dans la section compte dans paramĂštres et de cliquer sur « RĂ©silier l’abonnement ». C’est aussi simple que cela ! Une fois que vous aurez rĂ©siliĂ© votre abonnement, il restera actif pour le reste de la pĂ©riode pour laquelle vous avez payĂ©. DĂ©couvrez-en plus ici.
Puis-je / comment puis-je télécharger des livres ?
Pour le moment, tous nos livres en format ePub adaptĂ©s aux mobiles peuvent ĂȘtre tĂ©lĂ©chargĂ©s via l’application. La plupart de nos PDF sont Ă©galement disponibles en tĂ©lĂ©chargement et les autres seront tĂ©lĂ©chargeables trĂšs prochainement. DĂ©couvrez-en plus ici.
Quelle est la différence entre les formules tarifaires ?
Les deux abonnements vous donnent un accĂšs complet Ă  la bibliothĂšque et Ă  toutes les fonctionnalitĂ©s de Perlego. Les seules diffĂ©rences sont les tarifs ainsi que la pĂ©riode d’abonnement : avec l’abonnement annuel, vous Ă©conomiserez environ 30 % par rapport Ă  12 mois d’abonnement mensuel.
Qu’est-ce que Perlego ?
Nous sommes un service d’abonnement Ă  des ouvrages universitaires en ligne, oĂč vous pouvez accĂ©der Ă  toute une bibliothĂšque pour un prix infĂ©rieur Ă  celui d’un seul livre par mois. Avec plus d’un million de livres sur plus de 1 000 sujets, nous avons ce qu’il vous faut ! DĂ©couvrez-en plus ici.
Prenez-vous en charge la synthÚse vocale ?
Recherchez le symbole Écouter sur votre prochain livre pour voir si vous pouvez l’écouter. L’outil Écouter lit le texte Ă  haute voix pour vous, en surlignant le passage qui est en cours de lecture. Vous pouvez le mettre sur pause, l’accĂ©lĂ©rer ou le ralentir. DĂ©couvrez-en plus ici.
Est-ce que Flutter est un PDF/ePUB en ligne ?
Oui, vous pouvez accĂ©der Ă  Flutter par Carmine Zaccagnino en format PDF et/ou ePUB ainsi qu’à d’autres livres populaires dans Informatica et Programmazione Microsoft. Nous disposons de plus d’un million d’ouvrages Ă  dĂ©couvrir dans notre catalogue.

Informations

Éditeur
Hoepli
Année
2020
ISBN
9788820399603

1

Creare la vostra prima app Flutter

Iniziamo a scrivere effettivamente del codice e a creare app per imparare quello che potete fare con Flutter.

Familiarizzate con la sintassi del Dart e con le classi di Flutter

In questa prima sezione del capitolo, darete un’occhiata al codice di esempio della CLI di Flutter, vedrete come lavorare con codice Dart e imparerete le basi dell’architettura e dell’implementazione di un’app Flutter.
Per realizzare un’app Flutter, create una cartella per contenere il codice sorgente dell’app e, all’interno di questa prima, un’altra cartella chiamata lib. La cartella lib ù dove aggiungeremo i nostri file Dart definendo l’aspetto e il comportamento della nostra app.
Per ora non lavorerete con la CLI ma, quando sarete pronti a compilare l’app, utilizzerete flutter create per generare i file necessari per far sì che l’app venga compilata (che imparerete a conoscere e modificare nell’appendice sulla configurazione dell’app). In aggiunta ai file e alle cartelle direttamente correlate a Flutter e la vostra app, infatti, la radice dell’albero del sorgente dell’app deve anche contenere una cartella android e una cartella ios, contenenti i file di configurazione del sistema di compilazione di ognuna delle piattaforme.
All’interno della cartella lib, create un file chiamato main.dart.
All’esterno di lib, create un file chiamato pubspec.yaml e incollate questo codice all’interno:
name: flutter_example_name description: Example description of a flutter app that makes great things 
Images
happen.
dependencies: flutter: sdk: flutter
dev_dependencies: flutter_test: sdk: flutter
flutter: uses-material-design: true
Il file pubspec.yaml contiene informazioni sul vostro progetto e le librerie su cui dipende, che Flutter utilizzerà per compilare la vostra app. Questo file, in realtà, ù richiesto da qualsiasi pacchetto Dart, ma ci vorranno un po’ di tempo e qualche capitolo prima di iniziare a guardare qualche pacchetto Dart che non sia un’app Flutter.
All’interno di main.dart, scrivete questo:
import package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'Flutter Demo', theme: ThemeData( primarySwatch: Colors.blue, ), home: MyHomePage(title: 'Flutter Demo Home Page'), ); }
}
class MyHomePage extends StatefulWidget { MyHomePage({Key key, this.title}) : super(key: key); final String title;
@override _MyHomePageState createState() => _MyHomePageState(); }
class _MyHomePageState extends State<MyHomePage> { int _counter = 0;
void _incrementCounter() { setState(() { _counter++; }); } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text(widget.title), ), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ Text( 'You have pushed the button this many times:', ), Text( '$_counter', style: Theme.of(context).textTheme.display1, ), ], ), ), floatingActionButton: FloatingActionButton( onPressed: _incrementCounter, tooltip: 'Increment', child: Icon(Icons.add), ), ); } }
Questo file – una volta compilato ed eseguita l’app risultante – permette di ottenere una semplice app di una sola schermata con un contatore e un Floating Action Button (il tasto in basso a destra), che incrementa il contatore mostrato al centro della schermata, come mostrato nella Figura 1.1.
Images
Figura 1.1 – L’app di esempio di Flutter in azione su Android.
Se l’app non funziona, esegui il comando:
$ flutter create
Come ù stato illustrato in precedenza, flutter create ù il comando utilizzato per creare progetti di app Flutter, ed eseguirlo in una cartella contenente codice Flutter, come in questo caso, creerà i file e le cartelle necessarie per compilare l’app per Android e iOS (oltre a cartelle per lo sviluppo Web e desktop se li avete attivati).
Ricordate che potete risolvere la maggior parte dei problemi di compilazione non causati da errori nel codice, specialmente dopo aver compilato diverse volte, eseguendo:
$ flutter clean
che eliminerĂ  file lasciati da compilazioni precedenti.

Analizziamo il codice di esempio

Dividiamo il codice in parti piĂč “digeribili” in modo da rendere piĂč comprensibile questo esempio.
Il file pubspec.yaml
Prima di passare a main.dart, che contiene il codice principale dell’app, diamo un’occhiata veloce al file pubspec.yaml, di cui parleremo in maggior dettaglio nell’appendice dedicata alla configurazione dell’app.
Ricordo che pubspec.yaml non ù presente solo in app Flutter: ù una caratteristica dei pacchetti Dart e, come tale, contiene anche le informazioni necessarie per renderlo un’app Flutter.
Nella prima parte specificheremo alcuni metadati sull’app Flutter. In questa sezione, vengono impostati due attributi:
Images
L’attributo name, che Ăš il nome del pacchetto Dart ed Ăš il nome predefinito dell’app che appare sulla schermata home o nel drawer. Uno dei problemi di name Ăš che deve essere tutto composto di caratteri minuscoli ed essere un identificatore Dart valido: non puĂČ iniziare con una cifra, non puĂČ contenere caratteri che non sono lettere o trattini bassi e non puĂČ essere una parola riservata del Dart (come class, if, try ecc.). PerciĂČ, Ăš consigliato modificare i file dell’app nelle cartelle android e ios, come Ăš stato spiegato nella sezione dell’appendice sulla configurazione dell’app, se vogliamo impostare un nome per l’app che non rientri all’interno di quelle restrizioni e/o se si vuole cambiare l’icona dell’app.
Images
L’attributo description, che deve essere una breve descrizione dell’app.
Per evitare problemi di compilazione e come generale buona pratica, il nome della cartella che contiene la radice del progetto (lib e pubspec.yaml, per esempio) dovrebbe essere lo stesso nome del pacchetto Dart.
...

Table des matiĂšres