Pourquoi utiliser React Native

React Native est très populaire de nos jours, et des milliers d’applications sont déjà construites avec React Native. De grands noms comme Facebook, AirBnB, Uber, et beaucoup d’autres entreprises ont adopté React Native et développent leurs dernières applications avec.
Je développe des applications React Native dans le cadre de mon stage et continuerait lors de mon alternance à partir de septembre 2019 ; voici les forces principales de ce framework.

Si vous connaissez Javascript, vous ne serez pas perdu.

J’ai commencé à écrire ma première application React Native, sans aucune expérience préalable dans le développement d’applications mobiles. Je connaissais Javascript et React, et c’était tout ce dont j’avais besoin pour commencer. Les développeurs Web peuvent utiliser leurs connaissances en Javascript pour écrire des applications React Native.

Une fois que vous aurez appris les composants du cycle de vie de React et les bases de ES6, vous serez prêt à commencer avec votre première application React Native.

La documentation officielle de Facebook est très complète, en effet, je n’ai pas eu besoin de suivre de tutoriels ou de lire des cours en ligne pour commencer le développement.

Apprendre sur le tas en codant. N’est-ce pas la meilleure façon d’apprendre ?

Le Rechargement à chaud ! Ne perdez jamais de temps à recompiler.

Ne connaissant pas le monde du mobile, j’ai mis un peu de temps à apprécier cette fonctionnalité qui me paraissait pourtant “normal“ en venant du web.

Imaginez que vous conserviez l’état de votre application et que vous la regardiez se recharger au fur et à mesure que vous effectuez vos modifications. Si vous travaillez sur une fonction à quelques écrans de l’écran principal, vous devrez naviguer à travers plusieurs clics, chaque fois que vous apporterez des modifications au code.

Avec le rechargement à chaud, vous n’avez pas besoin de perdre du temps à naviguer dans ces écrans pour vous assurer que votre code fonctionne. L’état de l’application est maintenu et vous pouvez la regarder se recharger sous vos yeux en moins de quelques secondes. L’idée est de maintenir l’application en cours d’exécution et de voir tous les changements effectués pendant l’exécution prendre effet, sans relance complète de l’application.

Cmd+D et « Enable Hot Reloading » font le tour sur l’émulateur.

React Native compile le javascript en Application native

Contrairement à d’autres frameworks comme Cordova qui ne sont pour la plupart qu’une vue Web, React Native est utilisé pour créer des applications natives. Les aperçus Web n’offrent pas l’expérience utilisateur naturelle qu’offre React Native.

Avec React Native, les widgets sous-jacents sont tous des composants natifs, offrant ainsi à l’utilisateur une expérience transparente. Cela fait vraiment une énorme différence.

C’est vraiment impressionnant puisque vous codez en Javascript, et que vous rendez des composants qui sont natifs de la plate-forme. C’est l’une des raisons pour lesquelles les applications créées à l’aide de React Native offrent une expérience utilisateur supérieure par rapport aux frameworks qui utilisent des vues Web.

Un exemple simple ici montre l’interface utilisateur d’un widget de sélecteur de date sur Android et iOS. Les deux sélecteurs de date sont des widgets natifs.

Un seul langage plusieurs technologies

Nous allons désormais parler de l’atout majeur des outils cross plateforme comme (React Native, Flutter, Cordova, Ionic, …). Un seul et même langage vous permettra de créer plusieurs applications qui nécessitent normalement différentes connaissances.

Vous n’avez pas besoin de connaître Objective-C, Swift ou Java. Avec Javascript et JSX vous construisez votre application qui fonctionne très bien sur plusieurs plates-formes. D’après mon expérience, près de 95% du code est partagé entre iOS et Android, avec des ajustements mineurs pour peaufiner le produit final sur les deux plateformes. N’est-ce pas génial ? Vous n’avez pas besoin d’avoir plusieurs équipes et bases de code pour prendre en charge la même application multiplateforme.

Au lieu de cela, vous avez une équipe et une base de code qui fonctionne à la fois sur les versions iOS et Android de l’application. C’est un gain énorme pour les petites entreprises et un gain de temps et d’argent.

Vaste communauté

Au cours des deux dernières années, React Native a gagné tellement de popularité, qu’il y a beaucoup de développeurs qui contribuent à améliorer React Native chaque jour.

Le repo React Native GitHub est open source et compte des milliers de contributeurs très actifs.

Si vous avez une erreur ou une quelconque question ils existent plusieurs endroits pour vous informer ( Stack Overflow, Github, … )

La communauté est immense et en pleine croissance. De nombreux problèmes ont déjà été résolus, et vous n’allez probablement pas réinventer la roue pendant votre expérience de développement.