Google Gears
Gears est un plug-in pour navigateurs permettant de faire fonctionner les applications Web hors connexion. Google le met en ligne le 31 mai 2007, sous licence libre et open source, d'abord sous le nom de Google Gears, puis le renomme Gears.
Il fonctionne sur Internet Explorer, Firefox, Chrome, Safari, Opera et sur les principaux systèmes d'exploitation actuels.
C'est le centre d'intérêt principal sur ce site, les applications
Web doivent fonctionner aussi localement, parce que la connexion n'est pas
toujours possible ou souhaitable, ou que les applications sont trop lentes,
et d'un autre coté, parce qu'il est préférable pour le
programmeur de ne pas avoir à choisir entre l'environnement local ou
le Web.
Google Gears apporte une pierre à l'édifice de ces applications
universelles.
On peut par exemple lire les messages de Gmail sans être connecté à Internet ou utiliser Google Reader de la même façon.
Gears est composé de trois modules JavaScript:
- LocalServer (Serveur local). Il met en mémoire tampon les ressources
et les restitue au besoin.
- DataBase (Base de données). Enregistre les données localement
dans une base SQLite.
- WorkerPool (Groupe d'agents). Rend les applications plus rapides en délivrant
les ressources de façon asynchrone (donc est une extension d'Ajax).
Google a décidé de se tourner vers HTML 5 pour les applications hors ligne, aussi est-il hautement recommandé d'utiliser HTML 5 pour les nouveaux développements à long terme. Pour un usage immédiat et portable, Gear demeure la solution.
La bataille des plug-ins
Google le décrit ainsi: "Gears is an incremental improvement to the web as it is today. It adds just enough to AJAX to make current web applications work offline". Traduction: Gears est une amélioration incrémentale au Web tel qu'il est actuellement. Il ajoute juste assez à Ajax pour que les applications Web actuelles puisse fonctionner hors ligne.
C'est le résultat d'une collaboration avec Mozilla, Adobe et Opera,
pour créer une fonctionnalité qui a été également
développé par Mozilla pour Firefox
3. Ce sera plus général et fonctionnera avec toutes interfaces,
donc avec Flash et concurrencera directement Silverlight.
Ainsi on voit que l'annonce par Microsoft de Silverlight basé sur XAML,
projet très ambitieux qui pourrait étendre au Web la suprématie
de Windows, fait réagir la concurrence. Adobe qui avait déjà
décidé de mettre sa technologie concurrente Flex en open source,
se joint à Google en partageant le code de son environnement Apollo.
Ainsi Google pourrait même concurrencer Microsoft sur son terrain, dans
le domaine du logiciel de bureau.
Les possibilités de Google Gears
Le plug-in va incorporer SQLite, un gestionnaire de bases de données
pour un stockage local, ainsi les applications disposeront-elles des données
sans connexion au réseau.
Il permettra à des applications déjà écrites et
fonctionnant sur le Web de devenir des applications de bureau.
Et d'un autre coté, les applications locales pourront être étendues
avec les possibilités du Web, tel que les moteurs de recherche qui
collecteront en ligne des données pour les utiliser hors ligne.
Le runtime Gears ne démarre qu'en ligne. Même si on veut utiliser le navigateur comme plateforme et que l'on définit une application pour fonctionner localement, il faut la mettre en ligne et l'afficher sur un site Internet la première fois, pour l'utiliser hors ligne ensuite.
Le système convient donc surtout à un service fournis par un site Web, il serait téléchargé comme un logiciel, et pourrait fonctionner sur le bureau sans connexion au site jusqu'à la mise à jour.
Comment cela fonctionne en pratique
Avant d'entrer
en mode hors ligne, le navigateur, doté de l'extension, vous demande
votre autorisation.
Puis les ressources utilisées par l'application sont stockées
dans une mémoire tampon, où elles pourront être retrouvées
sans connexion, quand aux données, elles sont enregistrées dans
un fichier SQLite.
Pour entrer en mode hors ligne, on clique sur un bouton, et cela démarre
la sauvegarde des données et ressources.
On aura donc à se connecter de temps en temps, pour récupérer
les données provenant du Web.
Gears et les autres
Gears apparaît dans un contexte de progrès ou les mêmes innovations sont apportées par plusieurs produits au même moments. Ainsi on peut le rapprocher des outils suivants:
- Chromeless de Mozilla. Permet de lancer les applications web depuis le bureau (mais en mode connecté).
- Air de Adobe. Cet environnement pour applications Internet riches dispose d'un mode offline.
HTML 5 prévoit le fonctionnement hors ligne mais son implémentation dépendra des navigateurs. Google soutient totalement HTML 5 et considère Gears comme un moyen provisoire.
Gears est fourni sous licence BSD.
Le framework Dojo se trouve dépassé mais intègre
maintenant Gears.
Silverlight ne l'est pas mais Gears est plus portable. AIR
de Adobe, (ex Apollo) va incorporer Gears pour les applications Flash.