Depuis le 9 septembre 2010, une révolution a atteint le Web. Celle du temps réel. Elle a été initiée par Google avec l’apparition de la recherche instantanée. La promesse est étonnante, et pourtant, cela fonctionne parfaitement : à peine l’internaute tape-t-il les termes de sa recherche dans le formulaire de la page du moteur que non seulement les suggestions apparaissent, mais également les réponses ! Une prouesse inimaginable il y a quelques années. A bien y regarder, les sites Web les plus avancés se comportent désormais comme des logiciels. Certains clonent d’ailleurs tout simplement des logiciels connus. Ainsi en va-t-il pour des sites comme les suites bureautiques Office Web Apps et Google Documents, et les logiciels de dessin en ligne d’Aviary (www.aviary.com). Dans toutes ces applications, on clique sur des boutons, on parcourt des menus, on déplace des éléments à la souris et la page se modifie instantanément, exactement comme s’il s’agissait d’un logiciel installé sur notre disque dur.Comment cela est-il possible ? Grâce à de nombreuses améliorations technologiques dont quelques-unes sont farouchement tenues secrètes.En tête de liste, on trouve, bien sûr, l’amélioration constante des performances des navigateurs. Lorsque nous nous connectons à un site, celui-ci nous transmet plusieurs types d’informations : des informations pures comme le texte contenu dans les billets d’un blog ; des informations de mise en page, par exemple telle couleur pour tel type de texte, telle image pour tel bouton ; et du code de programmation pour l’interactivité avancée de la page. Ce dernier, la plupart du temps, est fourni dans le langage JavaScript, que tous les navigateurs sont capables de comprendre.
La guerre du JavaScript
Or, depuis 2008, les navigateurs se sont livrés une guerre intensive sur le front de la puissance des moteurs JavaScript. Le meilleur sera le plus rapide à traiter les programmes. Les moteurs se sont succédé à un rythme effréné, clouant chaque fois leurs prédécesseurs sur place en annonçant des vitesses d’exécution souvent deux fois plus rapides. Si le JavaScript ne permettait à ses débuts que d’incorporer de petits gadgets, les moteurs TraceMonkey pour Firefox, V8 pour Google, Nitro pour Safari ou Chakra pour Internet Explorer 9 sont désormais capables de faire fonctionner, dans les navigateurs, de véritables clones de logiciels, tout aussi véloces. Et pour cause : ce sont les navigateurs qui font l’essentiel du travail.
Des informations dissociées
Même si ces derniers sont très rapides, il est étonnant qu’ils puissent afficher aussi vite des informations venant de très loin. On tape une lettre sur le clavier, et tout de suite des images et des textes s’affichent, qui proviennent d’ordinateurs parfois à l’autre bout du monde. Comment les informations peuvent-elles voyager si promptement ? Grâce, en grande partie, à la dissociation entre les informations et leur mise en forme. Dans Google Instant, dès la connexion sur la page d’accueil de Google, toutes les mises en page éventuelles de la page de résultats sont automatiquement téléchargées. Ensuite, au fur et à mesure que l’internaute tape, seuls les textes nécessaires à la réponse lui sont envoyés, sous forme compressée. C’est le programme en JavaScript de la page Google qui se charge de les placer au bon endroit. Les échanges de données entre l’ordinateur de l’internaute et ceux de Google sont ainsi limités. On a l’impression que sont téléchargées des pages complètes de résultats quand ce ne sont que quelques textes et images. Toutes les applications Web suivent ce principe. Elles stockent toutes les informations statiques dans le navigateur du visiteur, et n’actualisent que les données des parties qui changent. Moins il y a de données à échanger, plus cela peut se faire rapidement. Tout ceci ne suffit pas, malgré tout, pour permettre la magie d’un Google Instant. Pour réussir ce tour de force, il faut tricher. L’astuce consiste à fournir le maximum d’informations avant même que l’internaute l’ait demandé !
Des sites visionnaires
Pour devancer l’internaute, il est recommandé de s’appuyer sur l’étude statistique des recherches de l’ensemble des utilisateurs du Web. Lorsqu’un internaute commence sa requête par “ sar ”, il peut très bien vouloir taper “ sardine ”. Mais statistiquement, pour un internaute français, il y a plus de chance que la requête finale soit “ sarkozy ”. Il est donc possible de prévoir les recherches les plus probables qu’effectuera un internaute français, uniquement à partir d’une fraction de sa requête. Dès la première lettre tapée, les résultats les plus probables pour les lettres à suivre sont donc déjà envoyés !Les applications Web font fortement appel à cette technique de mise en cache : elles stockent à l’avance le plus de données possibles dans la mémoire du navigateur, pour les ressortir instantanément au moment où elles deviennent nécessaires. Et nous n’avons pas fini de nous émerveiller : avec l’avènement du HTML5, les applications Web vont pouvoir stocker de façon encore plus efficace les données dans les navigateurs. Et gagner encore en rapidité
🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.