Facebook annonce la réécriture des composants internes de son Framework React Native
Pour faciliter son utilisation avec les applications hybrides

Le , par Olivier Famien, Chroniqueur Actualités
Depuis la sortie du Framework React Native de Facebook, de nombreux développeurs se sont tournés vers ce dernier pour concevoir leurs applications mobiles iOS et Android. En plus de Facebook qui l’utilise plus que jamais pour concevoir ses applications iOS et Android, plusieurs autres grands noms dont Microsoft, Bloomberg, Tesla, Uber, Walmart, Baidu, pour ne citer que ceux-là, utilisent également le Framework pour le développement de leurs applications iOS et Android. Vu les avantages offerts par ce Framework, Facebook a annoncé depuis 2015 qu’elle ne compte plus se tourner vers le couple HTML5 et JavaScript pour développer ses applications mobiles et utilisent depuis lors cet outil pour le faire.

Avec le succès du Framework, certains développeurs ont commencé à pointer du doigt des insuffisances liées à l’utilisation de React Native. Sophie Alpert, Engineering Manager de React chez Facebook, explique depuis le départ React Native a été implémenté dans l’idée de l’utiliser avec JavaScript de manière asynchrone, sérialisable et groupée. Toutefois, ces principes initiaux auraient entravé le développement de certaines fonctionnalités et aujourd’hui utiliser la logique JavaScript directement avec certaines API natives synchrones s’avère impossible, avance Alpert.

De plus, la conception de React Native fait qu’il est beaucoup plus difficile d’utiliser des applications React Native pour appeler des fonctions implémentées de manière native. Enfin, la sérialisation des instructions entre les applications React Native et le code JavaScript signifie une copie inutile au lieu de partager directement la mémoire entre les deux mondes. Pour les applications entièrement construites avec React Native, ces restrictions sont généralement supportables. Mais pour les applications avec une intégration complexe entre React Native et le code d’application existant, cela peut représenter un véritable casse-tête, note Alpert.


En raison de ces difficultés, l’équipe de React de Facebook annonce une refonte de l’architecture de React Native. L’objectif de cette refonte est de rendre le Framework plus flexible et plus compatible avec l’infrastructure native dans les applications hybrides JavaScript/natives. Selon Facebook, cette réarchitecture tourne autour de trois changements internes majeurs. Premièrement, le modèle de thread sera amélioré de sorte qu’au lieu que chaque mise à jour de l’interface utilisateur utilise trois threads différents, les mises à jour prioritaires pourront être appelées de manière synchrone sur n’importe quel thread avec JavaScript tout en gardant une priorité basse du thread principal afin de conserver la réactivité.

Deuxièmement, des capacités de rendu asynchrone seront intégrées dans React Native pour permettre plusieurs priorités de rendu et simplifier la gestion des données asynchrones. Et enfin, la passerelle entre JavaScript et le code natif sera simplifiée afin de la rendre plus rapide et plus légère ; à partir de là, les appels directs entre le code natif et JavaScript seront plus intéressants et faciliteront la création d’outils de débogage tels que les traces de pile multilingues.

Après l’achèvement de refonte, Facebook souligne qu’il sera plus aisé de faire cohabiter du code natif et le code JavaScript. « Aujourd’hui, il n’est pas possible d’incorporer la navigation native et la gestion des gestes ou des composants natifs comme UICollectionView et RecyclerView sans bidouillages complexes. Après nos modifications du modèle de thread, les fonctionnalités de construction comme celles-ci seront simples », souligne Facebook.

Par ailleurs, pour ceux qui sont inquiets pour la compatibilité entre les nouvelles fonctionnalités du Framework et leurs applications existantes, Facebook rassure que la réécriture du Framework ne concerne que ses composants internes. « Les applications React Native existantes continueront de fonctionner avec peu ou pas de modifications ».

Source : Github

Et vous ?

Comment accueillez-vous l’annonce de la réécriture du Framework React Native ?

Bonne ou mauvaise initiative ?

Voir aussi

Facebook sort React Native pour Android et compile par la même occasion une version Android de son application Ads Manager avec le framework
Apache Foundation proscrit l’utilisation de licence Facebook comme celle de React
Facebook ne compte pas revenir au HTML5 et va utiliser son framework React Native pour le développement de ses futures applications mobiles
Facebook améliore React et React Native avec une nouvelle API d’accessibilité pour le support des applications d’assistance
Inferno, le framework JavaScript qui se veut meilleur que React est disponible en version 1.0 pour développer les interfaces d’applications web


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse Signaler un problème

Avatar de FloMo FloMo - Membre expérimenté https://www.developpez.com
le 22/06/2018 à 11:35
On parle du "succès" de React Native.

Airbnb vient d'annoncer son abandon. Et d'autres suivent.
Avatar de Bono_BX Bono_BX - Membre confirmé https://www.developpez.com
le 22/06/2018 à 16:17
Ce n'est pas tant l'échec de React Native en soit qu'un abandon global des couches, surcouches et sur-surcouches.
Malgré les indéniables avantages qu'apportent ces technos (frameworks, bibliothèques, etc), elles ajoutent à l'appli des instructions qui sont exécutées, alors que du spécifique bien maîtrisé est plus optimisé.
C'est d'autant plus vrai en web mobile, ou chaque instruction / ligne de code supplémentaire côté client est une augmentation de la taille du message et du temps de parse. J'ai vu d'autres sites qui ont abandonné ces technos et ont tout refait "from scratch".

 
Contacter le responsable de la rubrique Accueil