React Native accélère le processus de développement d'applications sur différentes plateformes, grâce à la possibilité de réutiliser la majeure partie du code entre elles.
Si vous vous demandez ce qu'est ce framework, alors nous vous recommandons de consulter notre article : Qu'est-ce que React Native ?
💙 Avantages et Inconvénients de React Native
Dans le développement d'applications mobiles, React Native offre une fusion d'efficacité et de polyvalence pour la création d'applications multiplateformes.
Lorsqu'ils envisagent d'adopter React Native, les développeurs doivent examiner minutieusement ses avantages et ses inconvénients. React Native simplifie le développement d'applications en permettant l'utilisation d'une seule base de code sur différentes plateformes, telles qu'iOS et Android. Cette approche accélère non seulement le processus de développement mais minimise également la consommation de ressources.
Cependant, React Native n'est pas sans défis. Les développeurs peuvent rencontrer des problèmes de compatibilité, des complexités de débogage ou des limitations dans l'accès à certaines fonctionnalités natives. Malgré ces considérations, l'attrait de React Native persiste, évident dans son adoption généralisée par des géants de la technologie comme Microsoft et Shopify pour construire des applications Android et iOS robustes. Alors que le paysage mobile continue d'évoluer, intégrer React Native dans le flux de travail de développement reste une option convaincante pour exploiter la puissance du développement multiplateforme.
Compte tenu de tous les avantages et inconvénients, il n'est pas étonnant que de nombreuses entreprises optent pour React Native pour leur développement d'applications mobiles.
📋 Voici une liste d'exemples de ceux qui ont utilisé ce framework en production.
1. Facebook et React Native
React Native a commencé comme un projet de hackathon de Facebook développé en réponse aux besoins de l'entreprise. Facebook voulait apporter tous les avantages du développement web, tels que des itérations rapides et une seule équipe pour construire l'ensemble du produit, au mobile. C'est ainsi que React Native a été conçu et utilisé dans le développement d'applications mobiles pour les applications iOS et Android.
2. Skype et React Native
Au début de 2017, Skype a annoncé travailler sur une toute nouvelle application, écrite en React Native. Cette nouvelle était encourageante pour les utilisateurs, car l'application bien conçue souffrait de nombreux problèmes. La nouvelle version a été totalement remaniée, depuis les icônes jusqu'à la mise en page complète, en ajoutant quelques fonctionnalités intéressantes.
Il est également important de noter que Microsoft a décidé d'utiliser React Native non seulement pour les plateformes mobiles, mais aussi pour l'application de bureau Windows. Le dépôt GitHub du plugin React Native pour les plateformes Windows universelles a été repris par Microsoft et est en développement actif. Cela montre que le potentiel de RN dépasse le développement d'applications mobiles.
3. Facebook Ads et React Native
La plateforme de réseautage social n'est pas la seule application React Native développée sous l'égide de Facebook. Les publicités Facebook étaient en fait la première application React Native pour Android et la première application entièrement basée sur React Native développée dans l'entreprise.
Le framework semblait parfaitement adapté pour gérer une grande quantité de logique métier complexe nécessaire pour gérer avec précision les différences dans les formats de publicité, les fuseaux horaires, les formats de date, les devises, etc., surtout qu'une grande partie était déjà écrite en JavaScript.
De plus, la mise en œuvre de surfaces UI avec beaucoup de données serait beaucoup plus facile avec React Native. De nombreux composants développés avec l'application Facebook Ads ont été utiles pour d'autres développeurs dans la construction de leurs applications.
4. Instagram et React Native
Instagram a relevé le défi d'intégrer React Native dans leur application native existante, en commençant par la vue la plus simple que vous puissiez imaginer : la vue des notifications push, initialement implémentée en tant que WebView. Cela n'exigeait pas de construire une infrastructure de navigation, car l'interface utilisateur était assez simple.
L'équipe de développement d'Instagram a rencontré quelques problèmes en cours de route, mais ils ont considérablement amélioré la vélocité des développeurs. Entre 85% et 99% du code était partagé entre les applications Android et iOS, en fonction des produits, ce qui a permis à l'équipe de livrer l'application beaucoup plus rapidement qu'avec une solution native.
5. Tesla et React Native
Tesla, le célèbre producteur de voitures électriques, a également rejoint la communauté React Native. L'entreprise a développé son application pour les propriétaires de voitures électriques et de batteries Powerwall en utilisant le framework tendance de Facebook. L'application est conçue pour diagnostiquer et localiser un véhicule, ainsi que pour le contrôler partiellement à l'aide d'un smartphone.
Tesla n'a pas dévoilé beaucoup de détails sur le projet, mais l'application a reçu des retours globalement positifs de la part des clients.
6. Airbnb et React Native
Airbnb a également intégré React Native dans leur application mobile. Ce qu'ils ont d'abord remarqué lorsqu'ils travaillaient avec le framework, c'est que le coût de l'intégration avec des applications natives existantes était élevé, mais cela en valait la peine.
React Native était très facile à démarrer, mais certains défis sont apparus en cours de route. Le problème majeur résultait du fait que les personnes novices en React avaient du mal avec certains concepts de gestion de l'état dans le contexte d'une application React.
Le plus grand avantage, en revanche, était la capacité à réutiliser le code. La plupart des composants étaient extrêmement réutilisables. De plus, React rendait le code très facile à refactoriser et à itérer.
Mise à jour : "En raison de divers problèmes techniques et organisationnels", Airbnb va passer de React Native à un développement entièrement natif. Il convient de noter que l'expérience générale a été décrite par les ingénieurs comme positive.
En outre, il semble qu'Airbnb a reconnu les avantages de React Native et essaie d'incorporer certains de ses concepts dans le développement natif.
Il a publié la bibliothèque Epoxy pour Android, qui emprunte certaines idées à React Native (par exemple, la syntaxe déclarative, la différenciation de l'arbre des composants).
7. SoundCloud Pulse et React Native
SoundCloud Pulse est une application pour les créateurs qui les aide à gérer leurs comptes et à maintenir leur communauté active. Lorsque l'entreprise a commencé à concevoir le second ensemble d'applications natives, elle a rencontré quelques obstacles.
Il était impossible de trouver des développeurs iOS et ils ne voulaient pas avoir un écart important entre les sorties iOS et Android. Par conséquent, une équipe de recherche indépendante a commencé à réaliser des sessions de test utilisateur avec des prototypes basés sur React Native.
Malgré quelques faiblesses que l'équipe de SoundCloud a repérées, leur expérience avec le framework a été globalement positive. Les développeurs ont trouvé plus facile de travailler sur une application basée sur React que sur une application native. De plus, ils étaient capables de construire l'application eux-mêmes sans apport fréquent de développeurs mobiles spécialisés.
8. Uber Eats et React Native
Uber a récemment partagé ses expériences concernant l'utilisation de React Native dans l'ingénierie de son application de livraison de nourriture. Contrairement à l'application standard Uber, le marché Uber Eats implique trois parties : les restaurants, les partenaires de livraison et les consommateurs. Ce modèle nécessitait un tableau de bord supplémentaire pour les restaurants.
Le tableau de bord du restaurant original a été construit pour le web et offrait un accès limité aux fonctionnalités natives des appareils, comme les notifications sonores, ce qui était un problème crucial pour l'expérience utilisateur.
Comme l'équipe avait beaucoup d'expérience avec React mais une exposition limitée à iOS/Android, ils ont décidé de reconstruire le tableau de bord avec RN.
Bien que le framework ne constitue qu'une petite partie de la pile technologique utilisée dans Uber Eats, les développeurs sont très positifs quant à ses possibilités et à sa capacité à les aider à répondre aux besoins à mesure que le marché se développe.
9. Strava et React Native
Strava, l'application populaire de suivi de fitness, est un autre exemple notable de l'intégration réussie de React Native. Reconnaissant le besoin d'une expérience multiplateforme transparente, Strava a adopté React Native pour unifier ses efforts de développement d'applications pour les utilisateurs iOS et Android. L'application offre des fonctionnalités telles que le suivi GPS pour la course et le cyclisme, permettant aux athlètes de se connecter, de se mesurer et de partager leurs activités.
La décision d'adopter React Native a non seulement rationalisé le processus de développement mais a également amélioré la cohérence de l'interface utilisateur sur différents appareils. Les développeurs de Strava ont apprécié la capacité du framework à gérer des fonctionnalités complexes comme le suivi GPS en temps réel tout en maintenant la réutilisabilité du code. En conséquence, les utilisateurs de Strava bénéficient d'une expérience cohérente, quel que soit leur plateforme mobile choisie.
🤔 Et pour conclure ...
Naturellement, il existe de nombreuses autres applications personnalisées écrites en React Native, et nous pouvons voir que l'espace pour le framework dans l'avenir du développement est en croissance.
React Native s'est avéré être une alternative viable au développement d'applications natives et, malgré quelques défauts, il offre une large gamme de possibilités. Avec une croissance dynamique de la communauté et une popularité croissante, nous sommes sûrs de voir de nombreuses autres applications React Native apparaître dans un avenir proche.