Affichage des articles dont le libellé est technique. Afficher tous les articles
Affichage des articles dont le libellé est technique. Afficher tous les articles

vendredi, mai 18

Les principales technos RIA enfin comparées

Cela faisait un moment que je recherchais un comparatif clair entre les technologies RIA majeures : n'ayant rien trouvé de satisfaisant, j'ai décidé de faire mon propre comparatif.

Vous trouverez donc ci-dessous Flash, Ajax, Apollo, WPF, Silverlight et Java comparés au regard des critères qui permettent - pour moi - d'apprécier une technologie RIA : dessin vectoriel, animations, multimedia, mode offline, 3D, accès système, besoin d'installation, cross-platform.


Des. Vect. Animation 3D Multimedia Accès syst. Offline Installation Multi plateforme
Flash Oui Oui Difficile Oui Non Difficile Plug-in Oui (dont mobile)
Ajax Limité Limitée Non Non Non Difficile Non Oui
Apollo Oui Oui Difficile Oui Oui Oui Oui Oui
Silverlight Oui Oui Non Oui Non Non Plug-in Windows / MacOSX
WPF Oui Oui Oui Oui Oui Oui Non Vista / XP SP2
Java Oui Oui Oui Perfectible Oui Oui Oui Oui (dont mobile)


Conclusion ? Java semble être la killer app des RIA ! Le gros problème de ce comparatif, c'est qu'il occulte quelques points importants : performances (et là, Java en prend un coup), et productivité du développement en particulier.

Ma préférence personnelle continue à aller vers Ajax dans la mesure où il peut avantageusement tirer partie de toutes les autres technologies selon les besoins. La productivité du développement reste évidemment son gros problème, mais on y progresse indéniablement.

Et vous, votre opinion ?

vendredi, mars 9

AJAX, JSON et BISON au secours de la bande passante

Dans la formidable époque que nous sommes en train de vivre, le web subit une révolution discrète et pourtant cruciale au royaume de "l'expérience utilisateur" : les applications du web ont en effet maintenant plus que jamais les moyens de réduire considérablement la bande passante utilisée.

Or sous des dehors techniques, cet aspect du web 2.0 est tout sauf un problème de geek :
- pour l'utilisateur, moins de données à faire transiter signifie une meilleure réactivité de l'application à ses différentes actions.
- pour le financier, moins de bande passante entraîne une baisse qui peut être significative des coûts de structure... en particulier dans le cas d'une montée en charge rapide de l'application.

Comment concrètement s'opère cette baisse de consommation ?
- Dans le passé, ce fut AJAX qui permit d'économiser des rechargements de page complets à chaque fois que des appels serveur sont nécessaires.
- Aujourd'hui, c'est JSON (si il est bien utilisé) qui diminue de manière considérable la taille des réponses renvoyées par les serveurs suite à une requête AJAX.
- Demain, ce sera peut-être quelque chose comme BISON (qui n'est qu'une expérimentation) d'une part et le stockage client massif d'autre part qui permettront d'optimiser encore un peu plus le flux d'information transitant entre le serveur et le client.

vendredi, janvier 19

Dojo Offline Toolkit : comment ça (va) marche(r) ?

Dojo Offline Toolkit a pour but d'être, comme son nom l'indique, une boîte à outils rendant aisé le développement de fonctionnalités offline pour les applications web d'hier et de demain. Pour cela, plusieurs choses sont nécessaires :
- une librairie qui permet le stockage d'information en mode offline : ça existe déjà, ça s'appelle dojo.storage.
- un proxy web léger sur le poste client permettant de gérer le mode offline de façon transparente pour l'utilisateur (je vais y revenir).
- une API permettant aux développeurs d'utiliser facilement les fonctionnalités du toolkit

Bon, plaçons-nous maintenant sur la machine cliente qui va utiliser une application fonctionnant avec le Toolkit :
- elle va regarder si vous disposez du proxy web de dojo offline
- si vous ne l'avez pas, elle vous propose de l'installer (installation simple : système NSIS pour Windows, XPI pour Linux) immédiatement
- que vous ayez le proxy ou non, vous utilisez ensuite l'application online
- une fois hors ligne et si vous disposez du proxy, celui-ci consulte le fichier ProxyAutoConfiguration (PAC) de votre navigateur et vous dirige vers votre version locale de façon transparente de l'application
- vous utilisez l'application hors ligne qui est alors entièrement basée sur Javascript et qui vous permet de stocker des informations dans votre navigateur grâce à dojo.storage
- dès que vous repassez en ligne, le proxy vous reconnecte au serveur distant et la synchronisation offline /online peut avoir lieu

Tout le travail qui est en cours consiste donc à créer le proxy (à partir de polipo, un projet opensource existant) et construire l'API... résultat des courses dans 3 mois !