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.

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 11 ans[1]
Dernière version 0.80.2 (24 juillet 2025)
Dépôt github.com/react/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 Multiplateforme (d)Voir 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

Historique

modifier

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

modifier

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"

modifier

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

modifier
  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, 13 avril 2019 (consulté le 6 novembre 2016)
  5. « Zuckerberg's Biggest Mistake? 'Betting on HTML5' », Mashable (consulté le 7 avril 2018)
  6. « A short Story about React Native » (consulté le 16 janvier 2018)
  7. Christopher, « A Deep Dive into React Native », YouTube (consulté le 16 janvier 2018)
  8. « React Native: Bringing modern web techniques to mobile »
  9. « Bridging in React Native », 14 octobre 2015 (consulté le 16 janvier 2018)
  10. « React Native Framework » Thursday, 13 September 2018
  11. « Qu'est ce que React Native ? », sur www.insideapp.fr (consulté le 23 octobre 2024)

Voir aussi

modifier

Articles connexes

modifier

Liens externes

modifier
  • (en) costumepub, « node.js and nest »  , sur costumepub, 6 janvier 2026
  • (en) bestdigitalmarketingexperts, « node.js and nest »  , sur bestdigitalmarketingexperts, 6 janvier 2026

📚 Artikel Terkait di Wikipedia

Code QR

homonymes, voir QR. Un code QR, en anglais QR code (en forme longue quick response code, litt.« code à réponse rapide »), est un type de code-barres à deux dimensions

Java Native Interface

La JNI (Java Native Interface) est une bibliothèque logicielle d'interfaçage, intégrée nativement au JDK de Java, qui permet au code Java s'exécutant

Progressive web app

manifest permet aux PWA de proposer, à l'instar d'une application mobile native, l'installation d'un raccourci sur l'écran d'accueil du terminal mobile

NativeScript

https://docs.nativescript.org/core-concepts/accessing-native-apis-with-javascript React Native Xamarin Titanium Site officiel Portail des logiciels libres

Prometheus (logiciel)

open-source solution. » « Cloud Native Computing Foundation Accepts Prometheus as Second Hosted Project », Cloud Native Computing Foundation, 9 mai 2016

Google Native Client

le programme XaoS ont déjà été portés pour Google Native Client. PNaCl, acronyme pour Portable Native Client (Client Natif Portable) est une version de

Bare metal

Katharine Dvorak, Modern systems programming with Scala Native : write lean, high-performance code without the JVM, Raleigh, North Carolina, The Pragmatic

Dart (langage)

d'applications sous forme de code Dart compilé en AOT. Native Dart 2.6 avec le compilateur dart2native pour compiler en code exécutable autonome et natif