- Microsoft a récemment annoncé qu’il cesserait d’utiliser React afin d’améliorer les performances du navigateur Edge
- Le navigateur Edge est construit sur Chromium, le projet open source de Google
- Pour différencier l’interface d’Edge, Microsoft a développé ses propres composants avec React
- Une approche consistant à créer de petits composants comme les menus et les listes déroulantes avec React, puis à les assembler, était utilisée
Problèmes
- Problème de modularité
- Plusieurs équipes partageaient des bundles et fichiers communs, ce qui a créé des dépendances inutiles
- Le ralentissement d’une partie de l’interface affectait aussi d’autres parties
- Rendu côté client
- Une baisse de performance due au mode de rendu côté client utilisant JavaScript
- Augmentation de la taille des bundles
- Plusieurs composants se sont retrouvés à partager inutilement de gros bundles communs
Solution
- Développement d’une nouvelle architecture orientée markup appelée WebUI 2.0
- Une approche visant à minimiser le code JavaScript et la taille des bundles
- Cette nouvelle architecture sera adoptée à la place de React
Conclusion
- La cause semble davantage être une mauvaise implémentation de Microsoft qu’un problème propre à React
- React n’est pas lent, mais on ne peut pas s’attendre à de hautes performances lorsqu’on crée de multiples instances
- Microsoft a néanmoins choisi de développer sa propre solution plutôt que de conserver React
4 commentaires
React n’est pas lent dans la plupart des cas, mdr.
L’article original dit-il aussi que React lui-même n’est pas lent ?
> React n’est pas lent. Mais on ne peut pas s’attendre à ce qu’il soit ultra-rapide quand on crée des dizaines d’instances.
Oui
On dirait une situation étrange où les autres programmes de Microsoft se transforment en PWA...