Flutter est un framework open source pour créer des applications mobiles de haute qualité et hautes performances sur les systèmes d’exploitation mobiles – Android et iOS. Il fournit un SDK simple, puissant, efficace et facile à comprendre pour écrire une application mobile dans le langage créé par Google, Dart.
Flutter en gros
- Framework de UI mobile
- fait par google
- aide à créer des interfaces natives de haute qualité sur iOS et Android
- gratuit et open source
- Expérience de développement rapide
Si vous avez besoin de créer une application Android et iOS belle et de haute performance en un temps record, Flutter est votre réponse.
Les pré-requis pour utiliser Flutter
- Système d’exploitation 64 bits (Windows, MacOs, Linux)
- Espace disque: Windows – 400 Mo, MacOs – 700 Mo, Linux – 600 Mo
- Outils: Windows (git), MacOs-Linux (bash, mkdir, rm, git, curl, unzip, qui)
- Obtenez le SDK Flutter
- exécutez «flutter doctor» sur l’invite de commande ou POWER SHELL. L’exécution de Flutter Doctor affiche toutes les dépendances restantes que vous devrez peut-être installer.
Quel language utilise Flutter?
Dart est un langage de programmation à usage général développé à l’origine par Google et ensuite approuvé comme standard par Ecma
source : Wikipédia
Dart est le langage de programmation utilisé pour créer une application avec Flutter, un langage que nous trouvons très intéressant :
- il est familier et facile à apprendre pour les développeurs
- il est basé sur les Classes et avec des types optionels – Optionally typed
- Il a une bibliothèque asynchrone très pratique (Future et Stream)
- Dart aide à créer une mise en page facile à comprendre pour votre interface utilisateur
L’histoire derrière Flutter
“sky” → Flutter Alpha → Flutter Beta
La première version de Flutter était connue sous le nom de «Sky» et fonctionnait sur le système d’exploitation Android. Il a été dévoilé lors du sommet des développeurs Dart 2015
source : Wikipedia
Il a été publié en mai 2017 dans une version stable Alpha. Flutter est maintenant en version bêta à partir du 27 février 2018.
Les Outils fournis par Flutter
Flutter est livré avec une CLI avec un tas de commandes utiles.
- doctor : affiche des informations sur l’outillage installé. Cette commande est vitale pour savoir s’il manque quelque chose de dépendances.
- logs : affiche la sortie du journal pour l’exécution des applications Flutter.
- screenshot : prenez une capture d’écran à partir d’un appareil connecté.
- test : exécutez des tests unitaires Flutter pour le projet en cours.
- trace : démarrez et arrêtez le traçage pour une application Flutter en cours d’exécution. Avec cette commande, vous pouvez tracer et mesurer le temps mur / CPU.
Les Widgets
Chaque Widget est une déclaration immutable d’une partie de l’Interface Utilisateur
Traduit de Flutter.io
Dans Flutter, tout est un widget. Essayons d’en créer quelques-uns pour voir :
Du texte :
new Text(“Flutter Text”)
Du texte stylisé
new Text( ‘Welcome to FlutterAuth,’,
style: DefaultTextStyle.of(context).style.apply(fontSizeFactor: 1.5),
),
un bouton :
new FlatButton( child: const Text(‘FLAT BUTTON’),
onPressed: () {
// Perform some action
},
),
Stateless vs Stateful
Il existe 2 types de widgets dans Flutter :
Stateless Widget : Ces widgets ne changent pas. Comme exemple, prenons un Widget texte avec une chaine de caractères constantes.
Stateful Widget : Ces widgets ont un état ou State qui peut changer. L’état peut être une ou plusieurs valeurs. Quand la valeur d’un état change, le Widget va être rechargé sur la page.
Les Tests
Dans Flutter, nous avons 3 types de test:
Test unitaire : lorsque vous souhaitez tester un morceau de code comme une fonction.
Les tests sont exécutés sur une machine virtuelle Dart locale avec une version headless du moteur Flutter.
Test de widget : vous aide à tester un seul widget.
Les tests sont exécutés sur un simulateur, un émulateur ou un appareil.
Test d’intégration : pour le test automatisé de l’interface utilisateur.
Si vous connaissez Selenium / WebDriver (Web), Espresso (Android) ou UI Automation (iOS), alors Flutter Driver est l’équivalent de Flutter à ces outils de test d’intégration. En outre, Flutter Driver fournit une API pour enregistrer les traces de performances (alias la timeline) à partir des actions effectuées par le test.
traduit de Flutter.io
Ces tests sont exécutés sur un simulateur, un émulateur ou un appareil.
En conclusion
Dans l’ensemble, Flutter fournit une boîte à outils d’interface utilisateur simple et facile à comprendre pour développer vos applications dans un format déclaratif, et reste l’un des choix les plus pertinents pour le développement d’applications mobiles au moindre coût.