React Native

React Native
Description de l'image React-icon.svg.
Description de l'image ReactNativeHelloWorld.png.
Informations
Développé par Facebook
Première version le 26 mars 2015, il y a 9 ans[1]
Dernière version 0.75.3 ()
Dépôt github.com/facebook/react-nativeVoir et modifier les données sur Wikidata
Écrit en JavaScript, Java, C++, Objective-C et PythonVoir et modifier les données sur Wikidata
Système d'exploitation MultiplateformeVoir et modifier les données sur Wikidata
Type Framework JavaScript (en)Voir et modifier les données sur Wikidata
Licence Licence MIT
Site web reactnative.dev

React Native est un framework d'applications mobiles open source créé par Facebook[2]. Il est utilisé pour développer des applications pour Android[3], iOS et UWP[4] en permettant aux développeurs d’utiliser React avec les fonctionnalités natives de ces plateformes.

Historique

En 2012, Mark Zuckerberg a déclaré: "La plus grande erreur que nous ayons commise en tant que société a été de parier trop sur HTML par opposition au natif"[5]. Il a promis que Facebook offrirait bientôt une meilleure expérience mobile.

À l'intérieur de Facebook, Jordan Walke a trouvé un moyen de générer des éléments d'interface utilisateur pour iOS à partir d'un thread JavaScript. Ils ont décidé d'organiser un Hackathon interne pour perfectionner ce prototype afin de pouvoir créer des applications natives avec cette technologie[6].

Après des mois de développement, Facebook a publié la première version de la configuration JavaScript de React Native en 2015. Lors d'un entretien technique[7], Christopher Chedeau a expliqué que Facebook utilisait déjà React Native en production pour son application de groupe et son application de gestionnaire de publicités[8].

Implémentation

Les principes de fonctionnement de React Native sont pratiquement identiques à ceux de React, à la différence que React Native ne manipule pas le DOM via le DOM virtuel. Il s'exécute dans un processus en arrière-plan (qui interprète le code JavaScript écrit par les développeurs) directement sur le terminal et communique avec la plate-forme native via une passerelle de sérialisation, asynchrone et par lots[9],[10].

React Native n'utilise pas HTML. Au lieu de cela, les messages du thread JavaScript sont utilisés pour manipuler des vues natives[11].

Exemple "Hello World"

Voici l'exemple "Hello World" en React Native :

import React from 'react';
import { AppRegistry, Text } from 'react-native';

const HelloWorldApp = () => {
  return (
    <Text>Hello world!</Text>
  );
}
export default HelloWorldApp;

// Skip this line if using Create React Native App
AppRegistry.registerComponent('HelloWorld', () => HelloWorldApp);

// The ReactJS code can also be imported into another component with the following code:
import HelloWorldApp from './HelloWorldApp';

Références

  1. « React Native: Bringing modern web techniques to mobile »
  2. « Git-hub React-Native »
  3. « Android Release for React Native »
  4. Windows Apps Team, « React Native on the Universal Windows Platform », blogs.windows.com, (consulté le )
  5. « Zuckerberg's Biggest Mistake? 'Betting on HTML5' », Mashable (consulté le )
  6. « A short Story about React Native » (consulté le )
  7. Christopher, « A Deep Dive into React Native », YouTube (consulté le )
  8. « React Native: Bringing modern web techniques to mobile »
  9. « Bridging in React Native », (consulté le )
  10. « React Native Framework » Thursday, 13 September 2018
  11. « Qu'est ce que React Native ? », sur www.insideapp.fr (consulté le )

Voir aussi

Articles connexes

Liens externes

(en) Ranjitpal singh, « React Native or Swift » Accès libre, sur Richestsoft,

(en) Omji Pandey, « node.js and nest » Accès libre, sur ClonifyNow,

(en) Smith Larry, « Flowers » Accès libre, sur Creative Florist & Flower,