Qu’est-ce que Flutter ? Avantages et limites

 

Quel avenir pour Flutter ?  Flutter est un SDK mobile gratuit open source pouvant être utilisé pour créer des applications Android et iOS d’apparence native à partir du même code. En phase bêta depuis quelque temps, Flutter 1.0 a été officiellement lancé en décembre 2018. Cependant, l’industrie du développement mobile craint toujours pour Flutter. Deviendra-t-il populaire ? Cela reste à voir.

 

Dans cet article, nous allons donner un aperçu rapide de Flutter. Nous verrons aussi les avantages et les inconvénients de ce langage.

 

L’essentiel sur Flutter

 

 

Flutter existe déjà depuis 2015, année où Google l’a introduit, mais le buzz autour de cette marque ne s’est intensifié que récemment.

C’est un outil multiplateforme destiné à créer des applications Android et iOS à partir d’une base de code unique en utilisant un cadre réactif moderne. Il est le principale concurrent de React Native développé par Facebook.

Les applications Flutter sont construites à l’aide de Dart, un langage de programmation simple orienté objet.

L’idée centrale de Flutter tourne autour des widgets. L’ensemble de l’interface utilisateur consiste à combiner différents widgets. Chacun définissant un élément structurel (un bouton ou un menu, par exemple), un élément stylistique (une police ou un jeu de couleurs, par exemple), un aspect de la mise en page (un remplissage, etc.). Flutter n’utilise pas de widgets OEM, mais fournit ses propres widgets prêts à l’emploi, qui ont une apparence native pour les applications Android (Material Design) ou iOS (Cupertino). Il est également possible de créer des widgets personnalisés. Clickez ici pour un aperçu technique de Flutter.

En termes de popularité, Flutter fait de bons progrès. Alors que Flutter figurait dans le top 100 des logiciels de GitHub lors de l’annonce de la sortie de la première version en juin 2018, il s’est hissé dans les rangs et figure désormais parmi les 30 premiers. Ceci est sans aucun doute une solution prometteuse.

Des milliers d’applications Flutter ont fait leur chemin dans les magasins d’applications, notamment l’application Alibaba, qui compte 50 millions d’utilisateurs.

 

Avantages de Flutter : Un grand avenir ?

 

Sans faire de comparaison avec d’autres plateformes, voici une liste de certaines caractéristiques et qualités qui pourraient vous inciter à tenter votre chance chez Flutter:

  • Productivité élevée. Puisque Flutter est multiplateformes, vous pouvez utiliser la même base de code pour vos applications iOS et Android. Cela peut certainement vous faire économiser du temps et des ressources.
  • Grande performance. Dart est compilé en code natif. Il n’est pas nécessaire d’accéder aux widgets OEM car Flutter a le sien. Cela signifie une communication moins médiée entre l’application et la plateforme. Comme l’explique Wm Leler: «Flutter est le seul SDK mobile offrant des vues réactives sans passer par un pont JavaScript.» Tout cela contribue à des temps de démarrage rapides des applications et à moins de problèmes de performances.

  • Développement rapide et simple. L’une des fonctionnalités les plus appréciées de Flutter est le rechargement à chaud. Ce qui vous permet de visualiser instantanément les modifications apportées au code sur les émulateurs, les simulateurs et le matériel. En moins d’une seconde, le code modifié est rechargé pendant que l’application est en cours d’exécution sans qu’un redémarrage soit nécessaire. C’est excellent non seulement pour créer des interfaces utilisateur ou ajouter des fonctionnalités, mais également pour corriger des bugs. En ce qui concerne la simplicité, Flutter affirme dans son document que la programmation avec Flutter est tellement simple qu’aucune connaissance préalable de la programmation n’est requise. «L’expérience des langages orientés objet est certainement utile, mais même les non-programmeurs ont créé les applications Flutter!».
  • Compatibilité. Étant donné que les widgets font partie de l’application et non de la plateforme, vous rencontrerez probablement moins de problèmes de compatibilité, voire aucun, sur différentes versions de système d’exploitation. Cela signifie moins de temps consacré aux tests.
  • Open-source. Les deux logiciels Flutter et Dart sont des logiciels à open-source gratuits. Ils fournissent une documentation complète et un soutien à la communauté pour vous aider à résoudre tous les problèmes que vous pourriez rencontrer.

 

Ce qui retient les développeurs

 

Les développeurs qui construisent des applications natives pour Android et iOS peuvent être découragés par la nécessité d’apprendre un autre langage de programmation, Dart. Et si vous envisagez de recruter une équipe de développeurs Dart pour votre application Flutter, vous risquez de rencontrer des problèmes de personnel, car ils ne sont pas très nombreux.

Cependant, en raison de sa simplicité, Dart est relativement facile à prendre en main, et connaître un langage de programmation supplémentaire est sans aucun doute un avantage pour tout développeur sérieux.

De plus, Flutter peut ne pas être votre plateforme de choix lorsque vous développez des jeux ou une application nécessitant de nombreuses fonctions spécifiques à l’appareil.

Le doute majeur sur Flutter concerne cependant sa nouveauté (Quel avenir pour flutter ?). Certains développeurs affirment qu’elle ne peut pas encore être utilisée pour créer une application commerciale complexe (ou application métier) et qu’elle convient mieux à des applications plus simples et au prototypage. Pourtant, en regardant sur Internet, on peut trouver des exemples de réussite concernant les applications Flutter en production. Vous pouvez parcourir la liste des applications créées avec Flutter ici.

 

Implémenter un outil de CI / CD approprié

 

Comme mentionné ci-dessus, de nombreuses applications Flutter sont présentes sur l’App Store et Google Play. Déjà 5% des applications Flutter sont en cours de publication sur Google Play ou App Store.

Lorsque vous construisez une application Flutter, n’oubliez pas de mettre en œuvre un outil approprié d’intégration et de diffusion continue (CI / CD). Cela vous aidera à concevoir, tester et distribuer votre application.

 

Conclusion

 

Alors, pour répondre à notre question : quel avenir pour flutter ? Cela dépend des développeurs et de leur adoption de ce nouveau langage. Cependant, lorsque vous avez déjà choisi Flutter comme SDK ou décidé de l’essayer, nous vous invitons à le faire correctement et à automatiser la création, le test et la distribution de l’application en mettant en œuvre un outil CI / CD dédié pour Flutter.