02.07.2013 Views

article de presse - Cap Data Consulting

article de presse - Cap Data Consulting

article de presse - Cap Data Consulting

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

D ossier<br />

Web 2.0, Ajax : la nouvelle génération<br />

Depuis maintenant plus un an, on met du Web 2 partout et à toutes les sauces. Entre<br />

l’actualité riche autour d’Ajax et <strong>de</strong>s tentatives <strong>de</strong> définition <strong>de</strong> Web 2, il est grand temps<br />

<strong>de</strong> faire le point sur l’évolution <strong>de</strong>s applications Web et <strong>de</strong>s sites. Les technologies se<br />

bousculent au portillon.<br />

Si pour Ajax, les spécialistes le cernent<br />

dans son utilité, son modèle <strong>de</strong> développement,<br />

il n’en va pas <strong>de</strong> même pour<br />

Web 2, notion vague et indéfinie. Web 2 n’est<br />

pas une technologie, une spécification. Il s’agit<br />

d’un concept aux frontières floues. La finalité<br />

<strong>de</strong> Web 2 est <strong>de</strong> fournir <strong>de</strong>s applications web<br />

dynamiques, interactives, plus riches, plus<br />

proches <strong>de</strong> l’utilisateur. Cela signifie donner<br />

une expérience utilisateur (interface, ergonomie)<br />

plus souple, plus interactive. Il s’agit<br />

aussi <strong>de</strong> pouvoir fournir un site plus communicant,<br />

plus ouvert sur les autres, bref, d’aller<br />

au-<strong>de</strong>là <strong>de</strong>s contenus et d’être plus collaboratif.<br />

On assiste à un retour en force du navigateur<br />

face aux clients lourds, aux applications<br />

riches.<br />

Web 2 regroupe tout un ensemble <strong>de</strong> technologies<br />

plus ou moins anciennes qui doivent<br />

permettre d’offrir <strong>de</strong>s sites interactifs, ergonomiques<br />

et fonctionnellement riches. On peut y<br />

trouver pêle-mêle : JSF <strong>de</strong> Sun, les platesformes<br />

<strong>de</strong> type Flash / Flex, les frameworks<br />

Ajax, les flux RSS.<br />

La page <strong>de</strong>vient un simple conteneur<br />

La page web n’est plus une page se contentant<br />

d’afficher <strong>de</strong>s données. Elle <strong>de</strong>vient en réalité<br />

un conteneur dans lequel il est possible <strong>de</strong><br />

mettre à jour et <strong>de</strong> différencier le contenu, les<br />

fonctions, selon la zone <strong>de</strong> la page. Pour faire<br />

simple, un page Ajax peut être un ensemble <strong>de</strong><br />

zones Ajax ou non. Et chaque zone peut fonctionner<br />

<strong>de</strong> manière indépendante. Cela permet<br />

d’avoir une mise à jour ciblée <strong>de</strong>s contenus.<br />

Pour minimiser la ban<strong>de</strong> passante, Ajax (et<br />

consorts) permet <strong>de</strong> séparer les couches présentation<br />

et métier / fonctionnelles. Ainsi,<br />

toute la présentation se déroule localement et<br />

la logique métier et les données sont stockées<br />

sur le serveur.<br />

Client riche, application riche, etc.<br />

Quand on souhaite faire <strong>de</strong>s applications dites<br />

riches (interface, fonctionnalités, ergonomie,<br />

etc.), les possibilités techniques foisonnent et<br />

le développeur, et encore plus l’entreprise,<br />

aura du mal à choisir, car selon le type <strong>de</strong><br />

cibles, les contraintes techniques et les fonctions<br />

souhaitées, le ou les choix diffèrent.<br />

Aujourd’hui, le site web se résume bien souvent<br />

à du HTML, ou xHTML, avec <strong>de</strong>s pages<br />

dynamiques, quelques animations. Ceci constitue<br />

la majorité <strong>de</strong>s sites. HTML représente une<br />

limite technique. Certains sites font le choix du<br />

client lourd, c’est-à-dire que l’on utilisera un<br />

player, un runtime installé sur le poste client<br />

pour exécuter une application web.<br />

Typiquement, il s’agira <strong>de</strong> Flash / Flex ou d’un<br />

Flash like comme OpenLaszlo, mais reposant<br />

sur le lecteur Flash. Encore plus lourd dans le<br />

client riche, s’appuyer sur une plate-forme <strong>de</strong><br />

type Eclipse RCP ou Netbeans.<br />

Certains vont faire la différence entre le client<br />

riche dit « <strong>de</strong>sktop » <strong>de</strong> type Eclipse RCP utilisant<br />

Java Web Start pour fonctionner, et le client<br />

riche internet <strong>de</strong> type Flex / Flash, etc. On trouvera<br />

souvent dans la classification client riche<br />

internet (ou RIA en Anglais pour Rich Internet<br />

Application), Ajax aux côtés <strong>de</strong> Flash / Flex. Or, si<br />

les <strong>de</strong>ux font effectivement du RIA, il faut faire<br />

Programmez n°85 19 avril 2006<br />

la différence entre le RIA s’appuyant sur un runtime,<br />

et celui s’appuyant sur le navigateur seul.<br />

Dans le cas du client riche « <strong>de</strong>sktop », on<br />

arrive à une solution parfois très lour<strong>de</strong>, car il<br />

faut disposer <strong>de</strong> la plate-forme client riche et<br />

<strong>de</strong> Java Web Start. Ce <strong>de</strong>rnier permet <strong>de</strong> réaliser<br />

<strong>de</strong>s applications Java Swing sans problème,<br />

mais impose un socle technique. Si on<br />

osait le présenter ainsi, Ajax sera plutôt un<br />

« RIA Internet client léger ».<br />

Pour aller encore plus loin, dans les RIA, on trouve<br />

les langages <strong>de</strong>scriptifs <strong>de</strong> type XAML – XUL.<br />

Ils fournissent un autre concept d’interface riche<br />

et interactive. Si théoriquement, aucun runtime<br />

n’est nécessaire, en réalité un sérieux problème<br />

<strong>de</strong> compatibilité existe. Car, XUL ne fonctionne<br />

qu’avec Firefox et les navigateurs Gecko et XAML<br />

se limitent à Internet Explorer, même si Microsoft<br />

a annoncé un support plus large.<br />

Bref, il faut se méfier <strong>de</strong>s termes et <strong>de</strong>s logos<br />

ainsi que <strong>de</strong>s promesses <strong>de</strong>s éditeurs. Seul le<br />

pragmatisme doit être votre gui<strong>de</strong>. Il faut choisir<br />

la technologie, la plate-forme, l’outil qui<br />

correspon<strong>de</strong>nt le mieux à votre besoin et à vos<br />

attentes, sans pour autant hypothéquer l’évolution<br />

<strong>de</strong>s applications.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!