React (également connu sous le nom de React.js ou ReactJS) est une bibliothèque JavaScript frontale à code source ouvert permettant de créer des interfaces utilisateur ou des composants d'interface utilisateur. Elle est maintenue par Facebook et une communauté de développeurs individuels et d'entreprises.
React peut être utilisé comme base dans le développement d'applications monopages ou mobiles. Cependant, React ne s'occupe que de la gestion de l'état et du rendu de cet état dans le DOM (Document Object Model), de sorte que la création d'applications React nécessite généralement l'utilisation de bibliothèques supplémentaires pour le routage, ainsi que certaines fonctionnalités côté client.
React est une bibliothèque JavaScript utilisée pour construire des composants d'interface utilisateur réutilisables. Selon la documentation officielle de React, la définition est la suivante - React est une bibliothèque permettant de construire des interfaces utilisateur composables. Elle encourage la création de composants d'interface utilisateur réutilisables, qui présentent des données qui évoluent dans le temps. Beaucoup de gens utilisent React comme le V de MVC (Modèle-Vue-Contrôleur). React fait abstraction du DOM, offrant un modèle de programmation plus simple et de meilleures performances. React peut également effectuer un rendu sur le serveur à l'aide de Node, et il peut alimenter des applications natives à l'aide de React Native. React met en œuvre un flux de données réactif unidirectionnel, ce qui réduit le nombre d'erreurs et facilite le raisonnement par rapport à la liaison de données traditionnelle.
Caractéristiques de React
JSX - JSX est une extension de la syntaxe JavaScript. Il n'est pas nécessaire d'utiliser JSX dans le développement React, mais cela est recommandé.
Composants - React repose sur les composants. Vous devez penser à tout comme à un composant. Cela vous aidera à maintenir le code lorsque vous travaillez sur des projets à plus grande échelle.
Flux de données unidirectionnel et Flux - React implémente un flux de données unidirectionnel qui facilite le raisonnement de votre application. Flux est un pattern qui permet de garder vos données unidirectionnelles.
Licence - React est sous licence de Facebook Inc. La documentation est sous licence CC BY 4.0.
Avantages de React
Utilise le DOM virtuel qui est un objet JavaScript. Cela améliorera les performances des applications, puisque le DOM virtuel JavaScript est plus rapide que le DOM normal.
Peut être utilisé côté client et côté serveur, ainsi qu'avec d'autres frameworks.
Les composants et les modèles de données améliorent la lisibilité, ce qui permet de maintenir des applications plus importantes.
Limites de React
Ne couvre que la couche de visualisation de l'application, d'où la nécessité de choisir d'autres technologies pour obtenir un ensemble complet d'outils de développement.
Utilise le templating en ligne et JSX, ce qui peut sembler gênant pour certains développeurs.