Facebook présente React Fiber, une version entièrement réécrite de son framework JavaScript React
Qui permet d'utiliser de nouvelles fonctionnalités

Le , par Stéphane le calme, Chroniqueur Actualités
Durant l’édition 2016 de sa conférence F8 dédiée aux développeurs, Facebook y a notamment parlé de React Fiber, une évolution de React, sa bibliothèque JavaScript permettant de concevoir les interfaces utilisateurs en faisant abstraction du DOM. Pour rappel, l’objectif de React est d’offrir un modèle de programmation simplifié pour de meilleures performances.

Concernant React Fiber, l’ingénieur Facebook Adam Wolff a expliqué « qu’au fur et à mesure que nos applications sont de plus en plus complexes et afin de prendre en charge les périphériques mobiles basiques, nous avons exploré certains changements fondamentaux dans React. React Fiber est une réécriture complète et rétrograde du noyau React qui permet une programmation sophistiquée du travail de rendu. À court terme, il va permettre aux développeurs de débloquer de nouvelles fonctionnalités comme des limites d'erreurs compréhensives, la possibilité de renvoyer des tableaux et des chaînes à partir du rendu, ainsi que des messages d'erreur plus descriptifs et des traces de pile. À long terme, Fiber servira de nouvelle base sur laquelle les améliorations et innovations des années à venir vont s’appuyer, ce qui facilitera la création d'applications mobiles web et natives de haute qualité ».

L'idée derrière React Fiber est de se servir des connaissances que l'entreprise a amassées en développant React la première fois et les injecter dans un framework qui est entièrement compatible avec les applications React existantes.

L'objectif principal était de rendre React le plus réactif possible, Ben Alpert, un ingénieur de Facebook qui est accessoirement membre de l'équipe React, a expliqué que « Tandis que nous développons React, nous cherchons toujours à voir comment nous pouvons aider les développeurs à créer des applications de haute qualité plus rapidement ». Et de continuer en disant que « nous voulons rendre plus facile de faire des applications qui fonctionnent très bien et qui sont plus réactives ».

Mais pourquoi avoir réécrit entièrement React ? « Cela ne signifie pas nécessairement que l'ancienne base de code était mauvaise, mais nous voulions commencer par une nouvelle base qui pourrait servir de support à tout ce que nous ferons à l'avenir », a déclaré Alpert.

Relay Modern

Facebook a également évoqué Relay Modern, une nouvelle version de son framework JavaScript Relay pour la création d’applications basées sur les données. Relay combine React avec le langage de requête GraphQL de Facebook et maintenant Relay Modern, comme l'a baptisée l’entreprise, a été implémenté pour pousser ce concept plus loin et surmonter certaines des limites de la conception originale. Cela signifiait également simplifier une partie de la conception pour améliorer les performances globales du framework.

« Relay Modern est l'aboutissement de nos cinq années d'expérience dans la construction de clients GraphQL pour de multiples plateformes et embrasse la nature déclarative de GraphQL et l'analyse statique pour offrir des performances élevées et une expérience intuitive pour les développeurs », a commenté Adam Wolff.

Et de continuer en expliquant que « Relay Modern conserve aujourd'hui les meilleures parties de Relay (notamment les composants de vue avec leurs dépendances de données, les mises à jour automatiques des vues à mesure que leurs données changent et l’utilisation de la récupération de données déclaratives) tout en l'étendant pour offrir de nouvelles fonctionnalités telles que l'état local, l'évacuation du cache, les abonnements GraphQL et plus encore ».

Les requêtes statiques garantissent essentiellement que les requêtes complexes qui ne sont pas modifiées par les conditions d'exécution peuvent être préconstruites et déchargées sur les serveurs de Facebook. Ainsi, au lieu d'envoyer des requêtes complexes à travers le réseau, tout ce qu’une application doit envoyer est une chaîne qui identifie la requête prédéfinie et les variables nécessaires pour la compléter. Ici, la fonctionnalité d'optimisation du compilateur de Relay examine maintenant la structure de la requête pour optimiser la requête qui est maintenant stockée sur le serveur pour l'exécuter plus rapidement et par conséquent obtenir des résultats plus rapides. D'autres nouvelles fonctionnalités de React Modern incluent l’intégration d’un ramasse-miettes.

« Relay Modern est également conçu comme une suite d'outils modulaires qui peuvent constituer la base d'un écosystème client GraphQL. Il comprend notamment un compilateur GraphQL optimisant qui peut régénérer efficacement les artefacts de code, un environnement d’exécution qui peut être intégré à React ainsi que d’autres bibliothèques de vues et une API React facile à utiliser », a indiqué Adam Wolff.

L’entreprise a également annoncé avoir mis en open source React VR, une nouvelle bibliothèque qui permettra aux développeurs de créer des expériences convaincantes pour réalités virtuelles, et Litho, un nouveau framework déclaratif pour les IU efficaces sur Android.

Source : Facebook

Voir aussi :

React : la bibliothèque JavaScript de Facebook se dote de nouveaux outils de développement avec plus de fonctionnalités et une extension pour Firefox


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


 Poster une réponse

Avatar de akoho akoho - Membre régulier https://www.developpez.com
le 19/04/2017 à 11:01
Mais, je me demandais juste, quand est-ce que ces grandes entreprises vont enfin comprendre et aller de l'avant en mettant leur gros budget dans des domaines vraiment urgent comme le remède du sida, le paludisme, l'éradication des maladies mortelles, la pauvreté, la corruption des politiques, les recherches axés sur des sujet comme la télépathie pour faire évoluer l'humanité ?

Jusque là, c'est comme le fondateur d'ubuntu l'a bien dit: l'industrie est "stuck in a megapixel race, chassing wasted resolution".

Un autre outil javascript, vraiment ?
Avatar de michel.bosseaux michel.bosseaux - Membre averti https://www.developpez.com
le 19/04/2017 à 12:17
React est une librairie très utilisée, donc non, ce n'est pas "une de plus", on parle ici d'une évolution.
Facebook se repose dessus depuis plusieurs années et avait besoin en interne d'une version mise à jour, ils l'ont fait. Tu n'en veux pas, tu ne l'utilises pas.

Et pour ta tirade sur les remèdes aux grands maux de l'humanité ... tu as conscience d'être sur un forum IT ? Ca ne veut pas dire que les grandes boites IT ne peuvent pas donner / investir dans des développements dans ces domaines là aussi, juste que ce n'est à la base pas leur métier, c'est aux spécialistes des domaines concernés d'inventer les solutions (pour autant qu'ils soient assez financés pour le faire).

Quant au fondateur d'Ubuntu ... je ne pense pas qu'Ubuntu contribue à résoudre les problèmes cités ^^ Mais sur un plan privé, il fait sans doute des donations pour la recherche et pour des ONG. Il ne peut pas faire mieux.
Avatar de Vulcania Vulcania - Membre averti https://www.developpez.com
le 19/04/2017 à 14:07
Citation Envoyé par akoho Voir le message
Mais, je me demandais juste, quand est-ce que ces grandes entreprises vont enfin comprendre et aller de l'avant en mettant leur gros budget dans des domaines vraiment urgent comme le remède du sida, le paludisme, l'éradication des maladies mortelles, la pauvreté, la corruption des politiques, les recherches axés sur des sujet comme la télépathie pour faire évoluer l'humanité ?

Jusque là, c'est comme le fondateur d'ubuntu l'a bien dit: l'industrie est "stuck in a megapixel race, chassing wasted resolution".

Un autre outil javascript, vraiment ?
Je vois pas en quoi c'est aux entreprises d'empêcher la corruption des politiques, ça c'est au peuple de s'en occuper (et pire encore, j'ai certainement pas envie de voir Google et autres agir directement sur notre système politique)
C'est pas parce qu'on avance sur une librairie js que l'humanité va d'un coup abandonner toutes les autres recherches. Et il ne faut pas oublier que le principal objectif d'une entreprise c'est de gagner de l'argent.
Avatar de SurferIX SurferIX - Membre chevronné https://www.developpez.com
le 27/04/2017 à 16:23
Combien de frameworks à réapprendre ? Trois ? Pas grave, je suis déjà obligé de mettre à jour mes cours NodeJS depuis 3 ans car plus rien ne fonctionne chaque nouvelle année : rien n'est rétro compatible, c'est de la pure perte d'argent pour les entreprises, Angular 1 même pas compatible avec Angular 2, bref : on n'est pas à 3 frameworks supplémentaires près. Je sens que je vais me remettre définitivement au C pur sous Linux, je serai vraiment tranquille question évolution et pérennité... et je n'aurai pas à ré-écrire mes applications tous les ans (surtout si au final elles sont identiques et font exactement les mêmes choses (c'est pas ce que fait React Fiber quelque part ?)).
Contacter le responsable de la rubrique Accueil