React Native
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.
Développé par | |
---|---|
Première version | le 26 mars 2015[1] |
Dernière version | 0.75.3 () |
Dépôt | github.com/facebook/react-native |
Écrit en | JavaScript, Java, C++, Objective-C et Python |
Système d'exploitation | Multiplateforme |
Type | Framework JavaScript (en) |
Licence | Licence MIT |
Site web | reactnative.dev |
Historique
modifierEn 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
modifierLes 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"
modifierVoici 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
modifier- « React Native: Bringing modern web techniques to mobile »
- « Git-hub React-Native »
- « Android Release for React Native »
- Windows Apps Team, « React Native on the Universal Windows Platform », blogs.windows.com, (consulté le )
- « Zuckerberg's Biggest Mistake? 'Betting on HTML5' », Mashable (consulté le )
- « A short Story about React Native » (consulté le )
- Christopher, « A Deep Dive into React Native », YouTube (consulté le )
- « React Native: Bringing modern web techniques to mobile »
- « Bridging in React Native », (consulté le )
- « React Native Framework » Thursday, 13 September 2018
- « Qu'est ce que React Native ? », sur www.insideapp.fr (consulté le )
Voir aussi
modifierArticles connexes
modifierLiens externes
modifier(en) Ranjitpal singh, « React Native or Swift » , sur Richestsoft,
(en) Omji Pandey, « node.js and nest » , sur ClonifyNow,