Coopérative numérique Corse
React JS et React Native

React JS & React Native : les technos de demain ?

La technologie React développée par Facebook depuis 2013 (reactjs / reactnative) à le vent en poupe ces temps-ci sur la toile ! En effet, cette technologie qui implémente le concept du « Learn once, write anywhere. » vante les mérites de ses fonctionnalités et les avantages liés à son utilisation pour le développement d'applications web et mobile. React fonctionne sur le principe du Component (composant, en français), tout comme son concurrent Angular (détenu par Google). Le développement d'une application via la technologie React JS devient également plaisante lorsqu'on l'associe avec l'utilisation de l'ES6, entre autre permettant de s'amuser avec des méthodes comme .map() et .reduce() et bien d'autres shorthand pouvant faciliter et accélerer le développement d'une app. Couplée à webpack et babel, le livereload accentue son utilité vis à vis de la problématique liée au rafraichissement du résultat lorsqu'une modification du code source est effectuée.

React JS et React Native recommandent également d'embarquer un système de stockage comme Redux ou Mobx au sein des apps développées. Ces technologies sont très utiles quant il s'agit de conserver des données sur le navigateur du client. L'utilité d'un tel système est de permettre aux utilisateurs de naviguer à travers toute l'application de manière dynamique sans pour autant perdre les données enregistrées. L'un des avantages à l'utilisation de React est également de pouvoir réutiliser un composant dans une autre application (grâce au partage via une communauté de développeurs, github ou autres...) complètement indépendante de notre projet. Ainsi nous rendons notre application complètement modulaire et pouvons très facilement implémenter les composants fournis par la communauté qui conviennent à nos besoins.

En résumé ; React est une très belle technologie qui a de l'avenir devant elle. Le point d'attention que je souhaiterais soulever concerne la licence (BSD + patents license) dont il faut prendre connaissance avant toute implémentation au sein de votre projet. Autrement, il peut s'agir d'une bonne expérience pour vous, développeur(s), surtout si vous êtes à la recherche d'emploi dans le développement d'applications web / mobile.