Nous allons parler de la différence entre Flutter et react native
Suivez-nous !
Flutter est une technologie moderne et cross-platform utilisant le langage Dart permettant de réduire le temps de développement d’applications en utilisant un seul code source. Plus de 500 000 développeurs l’utilisent chaque mois avec une croissance de 10% de plus par mois.
Dans Flutter tout est widget, cela signifie que chaque élément est une brique modulable que l’on peut appeler où l’on veut.
Flutter est considérée à la fois comme un Framework et un SDK, car elle possède un environnement riche en outils permettant de développer, débugger et déployer des applications. Elle permet de développer rapidement des applications Android et iOS avec une qualité proche du native.
Comment ça marche?
BLoC dans Flutter: implémentez une architecture propre et semblable à un flux
Comment concevoir une application Flutter est une question qui n'a pas de réponse facile. Dart, étant un langage multi-paradigmatique, vous permet de mélanger et de faire correspondre les approches de programmation fonctionnelle et de POO. Il est très facile de gâcher les choses en utilisant ces deux concepts, mais je vais vous faciliter la vie en utilisant la programmation réactive et la bibliothèque BLoC (Business Logic Component).
Qu'est-ce que BLoC?
BLoC est l'acronyme de Business Logic Component, et est, essentiellement, un gestionnaire d'état global. Il contient des données qui décrivent un état particulier de votre application (peut être littéralement tout, du thème et des paramètres régionaux à la valeur dans une zone de texte). BLoC fournit également un moyen facile d'abonner vos widgets à une partie de l'état et d'implémenter une logique pour modifier l'état. Ceux qui viennent de l'arrière-plan de React le reconnaîtront immédiatement comme une sorte de chose Redux, et ils ont beaucoup de similitudes.
Ici, vous pouvez voir un organigramme simplifié du fonctionnement de BLoC. Un Bloc détient l'État et fournit des flux de cet État. Un flux est quelque chose auquel vous pouvez vous abonner et être averti chaque fois que l'état change. Le Bloc accepte également les événements . Un événement est envoyé au bloc et le bloc le gère en appliquant des transitions . Une transition est un changement d'un état à un autre en réponse à un événement. Une fois la transition appliquée, les flux sont notifiés et l'interface utilisateur reflète les modifications apportées à l'état. Laissez-le pénétrer pendant une minute.
Permettez-moi d'expliquer cette architecture plus clairement avec un exemple. Supposons que vous construisez une application qui a un thème sombre et un thème clair, et qu'il s'agit d'un thème clair par défaut. Vous créez un bloc contenant le thème actuel, clair ou foncé. Dans votre interface utilisateur, il y a un bouton pour changer le thème. Ce bouton enverra un événement lorsque l'utilisateur appuiera dessus. Le bloc recevra l'événement et préparera la transition de l'ancien état (thème clair) au nouvel état (thème sombre). Une fois la transition appliquée, les flux notifient ce changement à chaque widget d'interface utilisateur qui s'en occupe. Les widgets reçoivent un nouvel état et sont rendus à nouveau en utilisant un thème différent.
Le référentiel est quelque chose qui n'est pas inclus dans l'architecture originale de Flux, mais néanmoins très utile. Le bloc utilise le référentiel pour accéder à l'état à long terme. Contrairement à l'état normal, l'état à long terme est généralement stocké dans une base de données, localement ou à distance. Le référentiel permet d'y accéder, au moyen de REST, GraphQL, SQL ou d'autres méthodes. La bonne chose à propos des référentiels est que vous pouvez avoir plusieurs référentiels (pour l'état local et distant, ou pour différents dialectes SQL) et vous n'avez rien à changer dans votre code de logique métier lors du passage de l'un à l'autre!
Differences entre flutter et react native ?
Flutter est un kit de développement logiciel relativement nouveau par rapport à React Native et n’a pas encore pénétré complètement le marché du développement d’applications. Il utilise le langage de programmation Dart au lieu du langage le plus répandu, JavaScript. React Native utilise JavaScript, ce qui le rend facile à utiliser pour la plupart des développeurs d’applications.
Comments