Blink – Google Chrome, son nouveau moteur de rendu
Google a affirmé dans son blog le 3 avril 2013, par la voix d’Adam Barth [en], que Chrome et Chromium ont adopté un nouveau moteur de rendu sous le nom de « Blink » [en].
Blink est un fork de Webkit. Mais pourquoi ce fork ?
Google affirme que Chrome utilise un autre multi-processeur [en] dans son architecte que les autres navigateurs basés sur Webkit et peut améliorer de manière non négligeable son rendement.
Cet usage de différents processeurs a obligé un soutient de multiples architectures et aux yeux du moteur de recherche a fortement ralenti l’innovation.
Et c’est justement pour pouvoir innover et amener un nouveau sursaut au web, qu’après de longues réflexions, le géant de Mountain View a fait le choix de « forker » l’actuel moteur de rendu (qui lui-même héritait de khtml). Il est aussi évident que la qualité du moteur voire son unicité risque d’être une des principales problématique des ingénieurs.
Et dès le départ, c’est 7 000 fichiers qui vont disparaitre, soit 4,5 millions de lignes de code, mais ce sera surtout une meilleur stabilité du navigateur avec beaucoup moins d’anomalies, c’est du moins ce qu’affirme l’ingénieur logiciel.
D’après lui, la collaboration avec d’autres éditeurs de navigateurs continura afin de garantir la compatibilité qui a permis le succès de Chrome.
Blink va maintenant apporter de nouvelles fonctionnalités.
Dans cette liste de nouveautés, on peut voir une forte mise en avant de la compatibilité. Et c’est dans ce sens que les éléments à prefixe comme –webkit, ne seront pas favorisés au profit d’une soumission au W3C. Néanmoins on pourra activer ces nouveautés (en attendant qu’elles deviennent des normes) en tapant « about:flags » dans la barre d’url. L’amélioration du support des standards du web est donc bien un fer de lance.
Parmi les autres changements annoncés, on peut citer la liste suivante, plus technique et parfois moins visible pour l’utilisateur :
- Suppression de l’arborescence Widget (une contrainte Mac WebKit 1).
- Division du WebCore en modules.
- Établir une arborescence plus simple du système .
- Augmenter le multi usage (par exemple, l’analyseur HTML, le moteur de style, le parseur javascript).
- Retirer les parties obscures du DOM et faire reculer l’incompatibles avec les différents changements. Et ainsi masquer certaines parties du DOM pour supprimer de la complexité.
- Réparer les fuites de mémoire en n’utilisant qu’un seul moteur de JavaScript.
- Remplacer WebKitIDL avec WebIDL et supprimer certains codes liés au JavaScript.
- Amélioration de la vitesste du WebCore avec les événements du DOM3.
- …
Pour en savoir plus, je vous invite à lire les nouvelles fonctionnalité de Blink sur chromium [en].
Je vous renvoi aussi sur l’article du journal du net « Google abandonne Webkit » qui annonce qu’Opera aurait prévu d’intégrer le projet blink.
Antoine Crochet-Damais y rapporte les propos de Tristan Nitot (président de Mozilla Europe) qui affirme que l’annonce faite par Google est une réponse à leur projet de moteur de rendu Servo (dont on peut télécharger le code sur github).
Enfin, il reste à noter que Blink est open source comme le précédent moteur de rendu et que ce fork, est un enjeu de taille pour le géant du web puisque Webkit était sous la direction d’Apple, c’est maintenant Google qui pourrait imposer sont dictat sur les standards du web.