Flutter
1 MoisFormation Flutter
Description de la formation Flutter
- Développé et publié par Google dans sa première version stable en décembre 2018, Flutter est un kit de développement logiciel/framework dont l’ambition peut être résumée de la façon suivante : simplifier le développement multiplateforme en mettant à disposition une base de code commune pour toutes les plate-formes.
- Offrant des performances natives et des possibilités de personnalisation presque infinies, Flutter s’appuie sur des widgets et des composants permettant de construire des applications de manière très rapide. Sa programmation, réactive, s’appuie quant à elle sur le langage Dart (de Google également).
- Cette formation Flutter vous permet d’appréhender les concepts et outils clé mis à disposition par Flutter, puis de voir comment les appliquer afin de créer une application avec Flutter.
Objectifs
Objectifs opérationnels
Savoir développer une application Flutter pour iOS et Android.
Objectifs pédagogiques :
À l’issue de cette formation Flutter, vous aurez acquis les connaissances et compétences nécessaires pour :
- Découvrir les fonctionnalités du framework Flutter
- Développer une nouvelle application Flutter pour iOS et Android
- Savoir concevoir une application Flutter avec Dart
- Appréhender les différentes approches pour le “state management”
À qui s’adresse cette formation ?
Public :
Ce cours Flutter s’adresse aux développeurs web ou mobile.
Prérequis :
Pour assister à cette formation Flutter, il est nécessaire de maîtriser au préalable JavaScript ou TypeScript, ou un langage objet (Java, Swift, Kotlin, C#…).
Contenu du cours Flutter
Présentation de Flutter
- Historique
- Pourquoi choisir le langage Dart
- Concepts / Architecture
- L’écosystème
Le langage Dart
- Langage
- Types
- Operators
- Function
- Objets
- Exceptions
- Mixin
- Future
- Stream
- Isolate
- Pubspec : Gestion des dépendances
- Tests unitaires
Basic widgets
- Définition
- Rendering
- Render Object
- Element tree
- Widgets tree
- Layout
- Container
- Stack
- Row
- Column
- Alignement
- Material / Cupertino
- Stateful / Stateless
- Communication entre widgets
- Assets / Fonts
- Tests
Advanced widgets
- Listes / Scroll
- Formulaires
- Inherited widget
Données
- Gestion programmation asynchrone
- Future / FutureBuilder
- Stream / StreamBuilder
- Communication avec une API Rest/Json
- Persistance de données
- Shared preferences
- files
- SQLite
Navigation
- Routes
- Naviguer entre les routes
- Transmettre des paramètres données à une route
Interactions
- Gesture
- Animation
Architecture
- Les différents patterns utilisés
- Pattern BLoC (Business Logic Component)
- Redux
- Provider
- flutter_bloc
- mobx
- flutter_hook
Plugins
- Ajouter et utiliser un plugin
- Créer un plugin
Release une application
- iOS
- Android
Travaux Pratiques
Les travaux pratiques représentent 60% du temps de cette formation.