Environ 5 ans après son lancement, Flutter serait devenu le SDK mobile multiplateforme le plus populaire utilisé par les développeurs du monde entier. Selon une enquête menée auprès des développeurs en 2021 par le site de statistiques Statista, 42 % des développeurs de logiciels utilisent Flutter. Dans l'ensemble, environ un tiers des développeurs mobiles utilisent des technologies ou des SDK multiplateformes ; le reste des développeurs mobiles utilisent des outils natifs. Si Flutter possède également des faiblesses, ses avantages semblent l'emporter sur ses inconvénients.Flutter serait devenu le SDK mobile multiplateforme le plus populaire
Pour rappel, Flutter est un SDK gratuit et open source créé à la base par Google pour le développement d'applications mobiles multiplateformes. À l'aide d'une base de code unique indépendante de la plateforme, Flutter aide les développeurs à créer des applications performantes et évolutives dotées d'interfaces utilisateur attrayantes et fonctionnelles pour Android ou iOS. Flutter s'appuie sur une bibliothèque de widgets préfabriqués qui permettent même aux personnes ayant une expérience limitée de la programmation ou du développement de lancer rapidement leurs propres applications mobiles. Il a été créé en 2015, mais a été lancé officiellement en 2018.
Ces dernières années, Google a étendu son SDK afin de permettre aux développeurs de l'utiliser pour créer des applications pour Windows et pour le Web. Avec la sortie de Flutter 2.10 au début du mois, Google a annoncé que "Flutter for Windows" était prêt pour un environnement de production. Ainsi, Flutter serait rapidement devenu le SDK de choix des développeurs d'applications. Selon Statista, Flutter a récemment dépassé React Native de Facebook pour devenir le framework de développement d'applications mobiles numéro un. Le site allemand d'analyse statistique estime qu'en 2021, au moins 42 % des développeurs de logiciels ont utilisé Flutter.
Alors, pourquoi Flutter est-il si populaire auprès des développeurs d'application mobile ? Selon Theodoros Karasavvas, qui écrit sur les tendances technologiques, la popularité de Flutter a grimpé en flèche pour une très bonne raison. Il estime que Flutter offre aux développeurs un large éventail d'avantages qui accélèrent le développement et conduisent à des applications mobiles plus conviviales. Dans une tribune publiée sur le site de programmation informatique Stack Overflow, Karasavvas a listé les principales caractéristiques qui, selon lui, font de Flutter le meilleur dans son domaine.
Flutter est indépendant de la plateforme
Selon lui, tout développeur qui prévoit de lancer une application mobile sait combien il est important de disposer de versions pour Android et iOS. Android maintient une emprise ferme sur le marché mobile avec une part de marché de près de 70 %. Mais iOS compte également un grand nombre d'utilisateurs, avec une part de marché de 29,49 %. Ainsi, il estime qu'en se concentrant sur la création d'une seule application native, l'on ignore une grande partie du marché et on limite le succès potentiel futur de l'application. Mais le développement d'applications natives distinctes peut prendre beaucoup de temps et être coûteux.
« Flutter simplifie le développement multiplateforme. Plutôt que de créer un code distinct pour chaque plateforme, les développeurs peuvent tirer parti de la base de code unique de Flutter. Mais l'adéquation de Flutter au développement multiplateforme va au-delà de la portabilité du code. Contrairement à d'autres frameworks multiplateformes tels que React Native et Xamarin, les interfaces utilisateur (IU) construites par Flutter sont également agnostiques par rapport à la plateforme, car le moteur de rendu Skia de Flutter ne nécessite aucun composant IU spécifique à la plateforme », a déclaré Karasavvas.
Flutter simplifie et accélère le développement
Flutter possèderait de nombreuses fonctionnalités différentes qui rendent le développement d'applications mobiles multiplateformes plus simple et plus rapide. Le plus évident serait sans doute la possibilité de s'appuyer sur une base de code et un moteur d'interface utilisateur uniques pour le développement multiplateforme, ce qui réduirait l'effort nécessaire pour produire des versions d'une application pour Android et iOS. Selon Karasavvas, la vaste bibliothèque de widgets de Flutter permet également aux développeurs d'accéder facilement à des fonctionnalités prêtes à l'emploi, ce qui réduit le temps de codage global.
« Qui dit temps de codage réduit dit coûts de développement réduits », a-t-il déclaré. Karasavvas explique que l'une des caractéristiques les plus importantes de Flutter pour réduire le temps de développement est sa capacité de rechargement à chaud. Le rechargement à chaud, qui s'appuie sur la compilation JIT, accélère la mise en œuvre des modifications apportées au code. Dans le cas du rechargement à chaud, Flutter insère les changements de code dans une VM (machine virtuelle) Dart en cours d'exécution sans modifier les états préservés.
Comme il n'y a pas de recompilation complète du code de l'application, le rechargement à chaud présente plus rapidement les effets des révisions du code. Le rechargement à chaud permet aux développeurs de voir l'effet des changements en temps réel sans modifier l'état actuel de l'application. Ainsi, les développeurs peuvent tester plus rapidement les fonctionnalités et les versions, ainsi que corriger les bogues. Il faut théoriquement donc moins de temps pour mettre sur le marché les applications initiales et les mises à jour. Flutter serait donc optimal pour la création et la diffusion d'applications MVP (minimum viable product).
« En raison de son efficacité, Flutter est un excellent choix pour les startups disposant de fonds limités. Par exemple, une startup peut avoir déjà investi au moins 75 dollars de l'heure dans un concepteur Web et devra faire face à des coûts similaires ou plus élevés pour les développeurs d'applications. Flutter constitue un outil de développement efficace pour les entreprises soucieuses des coûts en réduisant le temps de développement et en accélérant la mise sur le marché des produits », a-t-il conclu sur ce point.
Flutter est facile à apprendre et à utiliser...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.