web-dev-qa-db-fra.com

Création d'applications hybrides React pour iOS et Android avec des performances natives

Est-il possible de créer des applications pour iOS et Android avec le framework JavaScript React de Facebook, offrant à peu près les mêmes performances que les applications natives?

23
raju-bitter

Jusqu'en janvier 2015, l'utilisation d'une approche hybride consistant à exécuter le composant JavaScript de React dans le composant WebView aurait été la seule option, à l'aide de structures telles que Apache Cordova , avec les inconvénients typiques de cette approche. Des tâches telles que la récupération de place JavaScript peuvent ralentir la partie native de l'application, ce qui entraîne le saut d'images, ce qui la rend lente.

Le 28 janvier Facebook a annoncé le projet React Native à React.js Conf 2015 . React Native sera un projet open source permettant le rendu natif d'applications HTML5 créées avec React pour iOS et Android. React Native a été utilisé par Facebook en interne pour créer des applications telles que l'application Groupes Facebook pour iOS.

Techniquement, React Native exécute le code JavaScript pour une application React dans un thread en arrière-plan. Les mises à jour du dom virtuel sont collectées et toutes les modifications sont envoyées via une API à la partie native de l'application. En procédant ainsi, React Native évite de ralentir le taux de FPS de l'application en faisant en sorte qu'elle attende l'opération JavaScript inachevée.

Facebook a annoncé que le code source de React Native sera disponible sur Github peu de temps après la conférence React.js 2015. Les participants à la conférence auront déjà accès au référentiel Github le 29 janvier 2015.

Mise à jour: La deuxième vidéo de présentation avec quelques détails techniques React.js Conf 2015 Keynote 2 - Un aperçu complet de React Native est disponible sur Youtube. Lors de la présentation, Facebook a annoncé que le code source du rendu du moteur de présentation et du modèle de boîte pour iOS et Android était disponible sur Github dans le référentiel suivant: github.com/facebook/css-layout

La version iOS de la bibliothèque d'animation utilisée pour React Native est hébergée sur https://github.com/facebook/pop

Mise à jour 2: Le code source est maintenant disponible sur Github Le code source de React Native est disponible maintenant https://github.com/facebook/react-native .

Mise à jour 3: L'équipe React a publié le support Android en septembre 2015https://code.facebook.com/posts/1189117404435352/react-native-for-Android-how-we-built-the- premier-cross-platform-react-native-app/

Les instructions pour démarrer avec le développement Android natif de React sont disponibles à l’adresse suivante: https://facebook.github.io/react-native/docs/Android-setup.html

45
raju-bitter

Comme indiqué ci-dessus, vous pouvez utiliser React Native pour iOS uniquement.

Si vous souhaitez utiliser React pour les deux plates-formes:

  • Découvrez Reapp ( http://reapp.io/ ). C’est un framework Javascript React + permettant de créer des applications iOS et Android dotées de fonctionnalités intéressantes.
  • Essayez peut-être Touchstone ( http://touchstonejs.io/ ). Fondamentalement: React + Cordova + HTML5/CSS3 UI. Les documents arrivent bientôt aussi.
0
mklb