Vous êtes sur la page 1sur 6

m Flutter Love s

ACCUEIL ACTUALITÉ DART/FLUTTER PHP PROJETS À

27 MAI 2021 ⌙ DART/FLUTTER

Introduction à Flutter
admin

Qu’est ce que Flutter ?


Flutter est un framework open source de développement natif multiplate-forme créé par Google.
La première version stable de Flutter (version 1.0) est publiée le 04 décembre 2018.
Flutter a déjà fait ses preuves. Le framework a séduit certains grands noms de la tech.
m Flutter Love
s
Alibaba, le géant du e-commerce chinois l’a utilisé pour son application Xianyu. Les
applications comme Reflectliy, Hamilton Musical et bien d’autres utilisent Flutter. Google
ACCUEIL ACTUALITÉ DART/FLUTTER PHP PROJETS À
l’utilise également dans ses produits ( Google Ads et Google Greentea). Canonical a fait
de Flutter un choix par défaut pour les futures applications de bureau. Flutter a permis à BMW
de créer l’application My BMW pour iOS et Android à partir d’une seule base de code.
L’application est entièrement développée en interne par BMW à l’aide de Flutter. Tencent utilise
Flutter dans toute l’entreprise pour plusieurs applications, notamment AITeacher, Now Live,
K12, Mr. Translator, QiDian et DingDang.
Il y a une forte communauté qui se bâtit autour du framework. En avril 2020, Google a annoncé
que l’utilisation de Flutter continue de croître rapidement, avec plus de deux millions de
développeurs ayant utilisé Flutter au cours des seize mois qui se sont écoulés depuis sa sortie
lors de la conférence Google I/O 2018.

Flutter est basé sur Dart, un langage de programmation moderne développé par Google qui
est très facile à apprendre si vous connaissez déjà Java ou JavaScript. Vous pouvez
commencer à vous familiariser avec Dart en lisant sa documentation qui est de qualité, facile
à suivre et disponible sur le site officiel.

Flutter présente 2 spécificités principales:

Les widgets : Dans Flutter l’interface utilisateur est construite avec des widgets. Ce sont
les briques qui décrivent le rendu fnal de votre application. La magie avec les widgets, c’est
qu’ils sont réutilisables, fortement composables et avec la garantie d’être toujours à jour.
Votre code est alors plus facilement lisible et maintenable. Flutter dispose d’une multitudes
de widgets vous permettant de construire votre interface utilisateur aussi facilement que
possible. Flutter fournit des widgets de composants Material Design et Cupertino pour
application centré sur Android ou iOS.
Rechargement à chaud (Hot reload) : Le rechargement à chaud est la possibilité de modifer
votre code et de voir les mises à jour dans votre application, en temps réel. Le Hot Reload
corrige le problème du temps nécessaire entre chaque build. Le rechargement à chaud
fonctionne en injectant votre code source mis à jour dans la machine virtuelle (VM) de Dart en
cours d’exécution . Une fois la VM à mis à jour les classes avec les nouvelles versions des
champs et des fonctions, le framework Flutter reconstruit automatiquement l’arborescence des
widgets, vous permettant de visualiser rapidement les effets de vos modifcations.

Présentation du langage Dart


Dart (à l’origine appelé Dash) a été présenté par Google au public en 2011 comme le
successeur moderne du langage JavaScript. Aujourd’hui, Dart est un langage optimisé
permettant de développer des applications rapides sur n’importe quelle plate-forme. Le
langage Dart est de type sécurisé; il utilise la vérification de type statique pour s ’assurer
que la valeur d’une variable correspond toujours au type statique de la variable. Le
m Flutter Love s
système de typage Dart est également flexible, permettant l’utilisation d’un type dynamic
combiné avec des contrôles d’exécution, ce qui peut être utile lors de l’expérimentation ou
ACCUEIL ACTUALITÉ DART/FLUTTER PHP PROJETS À

pour du code qui doit être particulièrement dynamique.


Dart offre la sécurité “null” (sound null safety). Cela signifie que les valeurs ne peuvent pas être
nulles à moins que vous ne disiez qu’elles peuvent l’être. Avec la sécurité “null”, Dart peut vous
protéger des exceptions nulles au moment de l’exécution grâce à une analyse de code statique.
Contrairement à de nombreux autres langages de sécurité “Null”, lorsque Dart détermine qu’une
variable ne peut être nulle, cette variable est toujours non non nulle. Si vous inspectez votre
code en cours d’exécution dans le débogueur, vous verrez que la non nullabilité est conservée
au moment de l’exécution.
Dart dispose d’ un riche ensemble de bibliothèques de base, fournissant des éléments
essentiels pour de nombreuses tâches de programmation quotidiennes. Au-delà des
bibliothèques de base, de nombreuses API sont fournies via un ensemble complet de
packages. Vous pouvez jeter un coup d’œil sur Pub.
Pub est le gestionnaire de packages pour le langage de programmation Dart, contenant des
bibliothèques réutilisables et des packages pour Flutter, AngularDart et les programmes
généraux de Dart.
La langage Dart n’est ne sert donc pas uniquement de base pour Flutter. Indépendamment de
Flutter, la technologie de compilation de Dart vous permet d’exécuter du code Dart de
différentes manières:

1. Plate-forme native: Dart comprend à la fois une machine virtuelle avec compilation Just-In-
Time (JIT) et un compilateur à l’avance (AOT) pour la production de code machine ARM ou
x64 natif. C’est à dire que vous pouvez par exemple exécuter du code Dart en ligne de
commande ou sur un serveur en tant que backend.
2. Plateforme Web : Pour les applications ciblant le Web, Dart comprend à la fois un
compilateur de temps de développement (dartdevc) et un compilateur de temps de
production (dart2js). Les deux compilateurs traduisent Dart en JavaScript.

En plus de pouvoir utilise Dart avec Flutter, vous pouvez créer une application Web, un script
de ligne de commande ou une application côté serveur. Apprendre Dart à un avantage
certain. Vous pourrez construire avec Dart et sans recourir à un autre langage vos
applications clients et serveurs.

Que peut t-on développer avec Flutter ?


Flutter prend en charge le mobile (Android & Ios), le desktop (Windows, Mac OS, Linux
m Flutter Love
s
etc), les périphériques intégrés (Raspberry Pi , Google Home Hub etc) et le web. C’est un
gain considérable de temps et de ressources pour les développeurs et les entreprises. En
ACCUEIL ACTUALITÉ DART/FLUTTER PHP PROJETS À
gros un projet Flutter peut être compilé pour fonctionner sur toutes ces plateformes. Pour
avoir tester le support des systèmes comme windows et linux, je peux vous dire que que
Flutter est vraiment une merveille. Si vous connaissez déjà un langage comme c/c++, grâce à
la bibliothèque dart:ffi vous pouvez appeler des API C natives de votre os.

Quelle est la différence


entre Flutter et les
technos existantes ?
Il faut noter que l’approche de Flutter à l’IU multi-plateforme est unique. Flutter n’utilise pas la
webview comme c’est le cas avec Cordova et PhoneGap. Les applications Cordova et
PhoneGap sont essentiellement des applications JavaScript/HTML/CSS déguisées en
applications natives mobiles.
À la différence de React native, Flutter est livré avec un grand nombre de widgets UI prêts à
l’emploi. Toute l’interface utilisateur d’une application Flutter est écrite en Dart. Vous n’avez pas
besoins d’utiliser des DSL UI externes (c’est-à-dire des fichiers HTML ou XML). Les widgets de
Flutter ne sont pas des widgets natives comme c’est le cas avec React ou Xamarin. Flutter
dessine lui même ces composants graphiques. Car l’utilisation des composants d’interface
utilisateur natifs présente un coût, les plates-formes sont mises à jour régulièrement, ce qui peut
prendre plus de temps pour qu’un framework s’adapte aux nouvelles versions. Le moteur de
Flutter possède tout ce qu’il faut pour la création de l’interface utilisateur de votre application.
Ce qui fait que Dart n’utilise pas de pont pour communiquer avec les modules natives de
l’appareil sur lequel il est exécuté. Et les applications Flutter sont directement compilées en
langage machine. Ce qui est un gage de performance et d’unicité de votre application. Votre
application sera tout aussi performante qu’identique (interface) quelque soit la plateforme
(Android, Ios etc).
Avec le mode de fonctionnement JIT (Just-In-Time) de Dart, le développeur bénéficie d’une
fonctionnalité très utile : Hot Reload. La fonctionnalité aide le développeur à créer des interfaces
utilisateur, à expérimenter et à ajouter différentes fonctionnalités, ainsi qu’à détecter et à corriger
les bogues rapidement sans avoir à reconstruire chaque fois son application. Le développement
d’une application Flutter est alors bien plus rapide.
Le développeur peut également accéder aux fonctionnalités natives telles que les kits de
développement logiciel (SDK), les bibliothèques tierces et réutiliser le code natif existant
(Swift, Objective C, Java et Kotlin).
Pour moi, Flutter est l’avenir du développement multi-plateforme.
m Flutter Love s

Si vous êtes développeur web et que vous voulez vous mettre au développement mobile natif, je
vous conseillerai de commencer à apprendre Flutter. La prise en main est facile. Si
ACCUEIL ACTUALITÉ DART/FLUTTER PHP PROJETS À

vous êtes développeur Android ou iOS, je vous conseillerai également d’essayer Flutter.
Vous ne serez pas déçu. Je pense que vous l’adopterai immédiatement.

Quelques exemples d’applications Flutter

source: https://github.com/Solido/awesome-flutter

Flutter Team Samples Collection of examples (including maps, json, Material and
Cupertino) by the Flutter team.
Flutter Common Widgets Collection of ofcial widgets demos & docs in chinese to help
developers learn quickly by Alibaba Auction Frontend Team.
Meme Chat Chat app on Flutter, using Firebase, Google Sign In, and device
camera integration by a team of Googlers.
Lime Lime social network by Sebastian Sellmair.

Music Player Full featured music player by Pawan Kumar.

WhatTodo Todoist like UI by Burhanuddin Rashid.

FlutterGram Complete Instagram based on Firestore & Google Functions by MDanics.

Beer-Me-Up Beer tracking nicely designed by Benoit Letondor.

Trace Modern and powerful crypto portfolio & market explorer by Trent Piercy.

Instory Instgram story downloader with a beautiful UI Sarath.

lDart , Flutter , flutter web , flutter widget

c Huawei prêt à lancer HarmonyOS

Laisser un commentaire
Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *
m Flutter Love s
Commen aire*
ACCUEIL ACTUALITÉ DART/FLUTTER PHP PROJETS À

Nom*

E-mail*

Site

Enregistrer mon nom, mon e-mail et mon site Web dans ce navigateur pour mon prochain
commentaire.

LAISSER UN COMMENTAIRE

Vous aimerez peut-être aussi