Ergolab : l'ergonomie du Web

mardi 19 décembre 2006
Un petit billet pour vous faire part d'un site que l'on m'a montré il y a peu (merci Aurélien) : Ergolab.


On y trouve notamment de nombreux articles sur des sujets comme :
  • Ergonomie et Flash
  • Qu'est-ce que l'ergonomie informatique ?
  • Faciliter la lecture d'informations sur le web
  • Comment concevoir un menu ?
Et bien d'autres. Une vraie mine d'or pour toutes celles et ceux qui s'intéressent à l'ergonomie et l'utilisabilité des interfaces web (et c'est mon cas). Dommage qu'il ne soit plus mis à jour depuis environ un an.

Mais maintenant je pose une question à voix haute : les RIA/RDA changeront elles les critères ergonomiques actuels ? Y aura t'il de nouvelles contraintes ? Plus de fléxibilité ? "Client riche et ergonomie", ça ferait un bon titre de bouquin (ou de billet)... A méditer.
Suite et fin de la présentation de frameworks PHP. Après avoir parlé de Cake PHP, Symfony et Seagull, je vais vous présenter trois autres frameworks, tous avec leurs spécificités.

Zend Framework




Zend framework est un framework assez récent porté par la société Zend, en charge du développement du moteur de PHP. Forcément très attendu, ce framework qui n'en est actuellement qu'à la version 0.2.0 propose déjà quelques fonctionnalités intéressantes :
  • Une implémentation de l'architecture MVC
  • Des clients pour des Web Services comme del.icio.us ou Flickr
  • Une implémentation de XML-RPC
  • Des objets base de données pour faciliter les requêtes SQL
  • Une gestion du RSS et du PDF
Bien qu'il n'existe pas encore de gestion native de l'Ajax, cela pourrait être une des fonctionnalités à venir, en attendant de voir une version 1 sortir. Il est à noter que la documentation, professionnalisme oblige, est très très complète. Ce framework, bien qu'assez jeune, semble donc très prometteur et fait même partie des plus utilisés au vu de la crédibilité qu'il propose, conséquence logique du fait qu'ils soient en charge de développement du moteur de PHP. A suivre donc.

Prado


Prado se différencie des autres frameworks ici présentés par une particularité assez importante : c'est le seul qui ne se calque pas sur le modèle MVC (en copiant Rails par exemple), mais lui préférant plutôt l'approche événementielle comme celle de l'ASP.NET. On y retrouve donc des composants, des événements et des propriétés plutôt que des procédures, des urls et des arguments de requête. Concernant l'Ajax, on y retrouve l'intégration de la bibliothèque Prototype et des effets script.aculo.us. Ce framework met en avant cinq bénéfices pour les développeurs :
  • La réutilisabilité de chaque composant.
  • La simplicité d'utilisation de composant via des fichiers de configuration.
  • La robustesse du code, basé sur de l'orienté objet.
  • La performance grâce à un système de cache.
  • L'intégration aux équipes de développement en séparant la couche de présentation de la couché métier.
Prado se distingue donc de part son approche événementielle, radicalement différente du reste des frameworks.

WACT


WACT (Web Application Component Toolkit) se décrit comme un framework modulaire de création d'applications web. Il implémente le modèle MVC ainsi que de nombreux design patterns tel que Front Controller ou Application Controller. On y retrouve également deux grands paradigmes de la méthode eXtreme programming : le ramaniement du code (refactoring) et la mise en place de tests unitaires, via le framework Simple Test (de la même équipe).

Il semble tout de même assez étonnant que ce framework n'adopte pas d'intégration Ajax ou même de gestion de cache. L'accent est plus mis par exemple sur un très bon moteur de templates et surtout sur un aspect sécuritaire poussé. En effet, la sécurité des applications n'est pas forcément assurée en utilisant un framework, et WACT propose ici des bonnes pratiques et les moyens de les mettre en place via leur solution pour proposer des applications robuste et sécurisée. On pourrait croire que WACT semble dépassé, mais il faut plutôt voir une spécialisation dans un domaine face à une concurrence de qualité.

Bilan


Après avoir passé en revue six frameworks PHP, on peut rapidement en tirer quelques enseigments :
  • Ils intègrent pour la plupart des modules Ajax, basés sur Prototype et script.aculo.us. Ce qui ne peut que mettre en avant ces deux bibiliothèques.
  • Le modèle de ces frameworks est Ruby on Rails (sauf pour Prado). On ne peut ainsi cacher l'influence de Rails dont je parlerais plus longuement dans un prochain billet. Néanmoins on voit déjà que ce modèle est très apprécié et donc porté sur d'autres langages.
  • Il n'existe pas réellement de meilleur framework, mais plutôt un ensemble d'éléments, chacun spécialisé dans un domaine : la sécurité, la simplicité, etc. En fonction du besoin, on doit toujours pouvoir trouver framework à sa main.
Il ressort tout de même une grande tendance aux frameworks PHP à avoir un modèle extérieur, comme Rails. Cela montre t'il les limites du PHP ? Peut-être, mais je ne le pense pas. PHP est un très bon langage permettant de faire de bonnes choses et de manière relativement facile. Maintenant il faut voir que l'arrivée de nouvelles solutions risque d'assombrir le futur de PHP, mais vu la belle réaction de la communauté en proposant de nombreuses alternatives toutes plus bonnes les unes que les autres, on peut véritablement penser que le PHP a encore de belles années.
Mike Chambers (évangéliste Apollo) vient de mettre à disposition une vidéo de démonstration d'applications Apollo réalisés par Christian Cantrell (membre de l'Apollo team). On y voit surtout deux applications :
  • L'intégration de Google Maps avec des vCards (contacts). Ces derniers sont récupérés sur le bureau, et un simple glisser déposer les affichent sur Google Maps.
  • Un système de surveillance de produits sur Amazon.
Bien que la qualité ne soit pas top, on voit déjà les quelques fonctionnalités proposées.

La vidéo sur Google Video, ou en haute résolution (mp4).

via le blog de Mike Chambers
Une grosse pointure de l'Internet se lance déjà dans le client riche de bureau ! En effet, eBay commence à dévoiler peu à peu son application riche basée sur Apollo, l'environnement multi-plate forme d'Adobe qui arrivera début 2007. Le projet s'appelle "San Dimas" et se retrouve basé sur l'API d'eBay. Le choix d'Apollo aidera au niveau de certains points :
  • Des notifications d'enchères directement sur le bureau
  • Le stockages des catégories en local, ce qui accélèrera la navigation
  • Très simplement prendre des photos d'objets via une webcam pour les envoyer sur la page d'enchères
  • Et bien évidemment d'autres avantages liés à une application de bureau

On perçoit déjà les éléments de base : recherche de produits, profil utilisateur, etc.
Enfin une grosse application qui risque de faire parler d'elle lors de sa sortie. J'ai hâte de pouvoir tester tout ça ! Les consommateurs y trouveront certainement un intérêt, les possibilités offertes seront plus larges, et ce n'est que le début. Je pense en effet que l'on peut pousser encore plus loin l'application en délocalisant entièrement le systèmes d'enchères, et pourquoi pas avec des gadgets permettant de suivre des articles en temps réel, etc.


Les enchères du moment : des Wii pour ceux qui seraient en retard

On sent que ça commence à venir, et ça fait plaisir !

Rechercher