Preact : l'alternative open source à la bibliothèque JavaScript React de Facebook
Pourra-t-elle profiter de la proscription d'Apache ?

Le , par Stéphane le calme, Chroniqueur Actualités
En 2013, Facebook a proposé React (aussi appelé React.js ou ReactJS), une bibliothèque JavaScript que le réseau social avait utilisée en interne depuis deux ans déjà et dont l’objectif est de faciliter la conception d’interfaces utilisateur interactives. Sur le dépôt GitHub dédié à React, Facebook indique qu’il vous suffit de concevoir des vues simples pour chaque état dans votre application afin que React mette efficacement à jour les bons composants lorsque vos données vont changer. Et de préciser que les vues déclaratives rendent votre code plus prévisible et plus facile à déboguer.

La bibliothèque est utilisée notamment par Netflix, Yahoo, Airbnb, Sony, Atlassian, Instagram, Whatsapp et, bien entendu, par les équipes de Facebook, appliquant le dogfooding sur le réseau social.

À cause du type de licence que Facebook a utilisé pour sa bibliothèque, Apache Foundation en a proscrit l’utilisation. Une mesure qui sera effective dès le 31 août de l’année en cours.

Néanmoins, le directeur d'ingénierie de Facebook, Adam Wolff, a expliqué que le réseau social ne va pas changer sa licence. Tout d’abord, il s’est excusé pour la confusion qui a pu être créée au sein de la communauté React et open source, rappelant au passage que Facebook a bénéficié de l’open source et a toujours travaillé dans l’optique de contribuer le plus possible en retour.

Par la suite, il a déclaré que « Nous respectons la propriété intellectuelle des tiers, y compris les brevets, et nous espérons que d'autres respecteront notre propriété intellectuelle également. La licence BSD + Brevets a simplement l'intention de donner à nos équipes plus de place pour apporter des contributions significatives à l'open source tout en réduisant notre temps de lutte contre des poursuites frivoles. D'autres entreprises de grande technologie ont pris des décisions similaires en fonction de ce qu'elles croient être le mieux pour leurs entreprises grâce à un mélange d'approches, y compris API, SDK et licences de logiciels. Certains diront que l'open source est différent, mais nous croyons que les développeurs qui s'inquiètent de la licence BSD + Brevets devraient se pencher sur la façon dont les entreprises abordent l'octroi de licences de brevet de façon holistique. »

Pendant ce temps, la communauté a présenté Preact, une alternative à React.

Sur le site dédié, il est expliqué que Preact fournit l'abstraction DOM virtuelle la plus fine possible sur le DOM. « Le web est une plateforme stable, il est temps que nous cessions de le réimplanter au nom de la sécurité. Preact est également un citoyen de première classe de la plateforme Web. Il compare le DOM virtuel au DOM lui-même, enregistre les gestionnaires d'événements réels et joue bien avec d'autres bibliothèques. »

La communauté évoque également sa taille. « La plupart des frameworks d'IU sont assez grands pour occuper le plus gros espace dans une application JavaScript. Preact est différent : il est suffisamment petit pour que votre code soit celui qui occupe le plus gros espace de votre application.

Cela signifie moins de JavaScript à télécharger, analyser et exécuter, laissant ainsi plus de temps à votre code afin que vous puissiez créer une expérience que vous définissez sans vous battre pour garder le framework sous contrôle. »

Il est aussi fait mention de ses performances. « La petite empreinte de Preact signifie que vous pouvez prendre le puissant paradigme Virtual Component DOM à de nouveaux endroits où il n’aurait pas pu aller autrement.

Utilisez Preact pour créer des parties d'une application sans intégration complexe. Intégrez Preact dans un widget et appliquez les mêmes outils et techniques que vous voudriez pour créer une application complète. »

Côté productivité, la communauté évoque le fait que :
  • les paramètres props, state et context sont passés à la méthode render() ;
  • le framework se sert d’attributs HTML standards comme class et for ;
  • Preact fonctionne avec les outils développeurs de React.

Il est également fait mention de la compatibilité de l’écosystème : « Les composants DOM virtuels permettent de partager facilement des éléments réutilisables - tout, des boutons aux fournisseurs de données. La conception de Preact signifie que vous pouvez utiliser de manière transparente des milliers de composants disponibles dans l'écosystème React. »

Sur le site dédié, la communauté a présenté le framework en action, notamment pour proposer à l'utilisateur d'effectuer une Todo List et aussi pour chercher le nombre d'étoiles qu'a obtenu un projet sur GitHub.

Parmi les entreprises et autres entités qui utilisent Preact figurent entre autres Uber, Tencent QQ, Pepsi, New York Times, Financial Times, Lyft, Cards et Instant Domain Search

Source : site dédié

Et vous ?

Avez-vous déjà utilisé React ? Qu'en pensez-vous ?
La mise en garde d'Apache vous fait-elle envisager d'abandonner cette bibliothèque ?
Allez-vous essayer Preact ? Que pensez-vous de cette initiative ?

Voir aussi :

Apache Foundation proscrit l'utilisation de licence Facebook comme celle de React, à compter du 31 août 2017


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


 Poster une réponse

Avatar de abriotde abriotde - Membre éclairé https://www.developpez.com
le 23/08/2017 à 14:22
La licence Facebook est une licence Open-Source, il y a juste une clause de pacification qui interdit les actions en justice contre Facebook si on utilise cette librairie. Si cette clause peut réduire les Patent-Troll, c'est un grand bien. Mais dans tous les cas cela n'empêche ni les proces contre Facebook ni l'utilisation ni la contribution... , Je ne la considère pas non-libre.
Avatar de michel.bosseaux michel.bosseaux - Membre averti https://www.developpez.com
le 23/08/2017 à 15:49
Je ne connais pas suffisamment React pour pouvoir mesurer si Preact apporte autre chose qu'un changement de licence, des arguments "fonctionnels" qui pourraient justifier de la préférer.
Par contre je mesure bien que l'adoption a l'air large, par de grands groupes sans doute avant tout soucieux des pbs de licence, justement. Mais s'ils l'utilisent, c'est aussi qu'elle propose les fonctions qu'il faut. Donc c'est une alternative sérieuse, à étudier.
Offres d'emploi IT
Architecte Sécurité H/F
Safran - Ile de France - Éragny (95610)
Développeur PHP / Stage H/F
SMILE - Provence Alpes Côte d'Azur - Lyon (69000)
CTO (Smart Farming)
APPLIFARM - Bretagne - Rennes (35000)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil