REST + AJAX, quel couple ! (3/3)

Partie 1
Partie 2

5. Templates

Pas vraiment d’idées à ce sujet. On peut peut  être utiliser un language type Perl/Python/Ruby pour générer les pages statiques non dynamiquement (générées une fois pour toute) à partir de templates.

Une autre solution consiste à n’utiliser qu’un fichier html pour tout le site, mais je crains que le développement ne devienne un peu fastidieux et qu’on perde tout l’aspect structuré de l’HTML.

6. Indexation des moteurs de recherche

C’est là où le bas blesse. En fait, nos pages sans javascript ne sont pas consultables. Donc là je vais proposer de croiser les doigts bien forts et d’esprérer qu’une nouvelle balise qui tue fasse son apparaition. Par exemple :

<content html="displayArtiste(mr-tac)"  data="/playlist/artistes/mr-tac/rdf/" />

Pour le navigateur, les données sont affichées avec displayArtiste()  et pour le  moteur/analyseur syntaxique, tout est à disponible à l’URI contenue dans data. Cela ferait disparaître, l’aspect opaque du javascript tout en conservant ses qualité ergonomiques.

7. Défauts

  • Un tel site demande un coût important en réalisation. Décrire chaque donnée précisément, assurer un accès propre et dans plusieurs formats n’est pas immédiat. Toutefois on pourrait se limiter à certaines formats et ne décrire avec précision que les données sensibles. De plus, un framework adapté permettrait de ne coder qu’une fois les données et de générer le format désiré automatiquement.
  • Le développement en javascript n’est pas aussi trivial que le développement pur HTML.
  • L’interfaçage avec les navigateurs pour aveugle n’est pas aisé.
  • Enfin, les vieilles machines supportent mal le javascript, voir ne le supporte pas du tout. Ce qui peut limiter l’accès au site web ainsi réalisé.

Conclusion

Au final rien de bien nouveau à part que l’on joue aux extrêmistes du REST tout en profitant de la souplesse ergonpmique de l’AJAX. Alors, pourquoi en parler ? Tout simplement car je n’ai jamais vu un seul site fonctionner ainsi. Les frameworks en vogue sont proches de ce type d’architecture, mais poussent à servir des pages webs dynamiquement générés par du python, ruby ou PHP (ce qui reste lourd pour le serveur).

GWT avec un fonctionnement un peu différent propose de générer des applications 100% javascript. Mais là encore on tombe sur une véritable boite noîre qui produit du code HTML souvent difficile à mettre en forme et pas toujours respectueux des standards.

Pourtant, la plupart des outils sont là pour développer une telle architecture. L’établissement de certains standards sur le format des URI permettrait le développement de frameworks optimisés pour ce type de site web. De plus, l’engouement des interconnexions entre les sites webs dotés d’une telle organisation pousserait les autres à s’y mettre. Enfin, REST et Ajax sont très à la mode, il ne manque donc pas grand chose pour que leur union se démocratise.

5 Responses to REST + AJAX, quel couple ! (3/3)

  1. Pingback: REST + AJAX, quel couple ! (3/3) | Web 2.0 Designer

  2. mrpingouin says:

    Sympa cette petite série. Ca donne à réfléchir.. Pour l’indexation, tu avais parlé à un moment d’envoyer une page avec un contenu provisoire statique, qui serait rafraichi par le javascript. Ainsi, on fait au mieux pour les robots ou les navigateurs simples. Mais c’est vrai que ça sort du pur schéma initial:\

  3. Gelnior says:

    Merci ! Je ne me souviens plus trop de ce que je t’avais dit, mais faire trop de pages implique l’apparition de “blank effect”, c’est à dire que ta page se recharge entièrement. Or, c’est ce qu’on veut éviter avec AJAX.

    Sinon, ptet que l’idéal serait d’avoir des site maps évolués qui redirigerait les machines et les vieux navigateurs là ou il faut.

    En tout cas, si je trouve le temps, je vais tenter de faire un site sous cette forme pour Dolebraï, histoire de voir ce que ça peut donner.

  4. nograda says:

    bonjour,

    superbe article, merci pour ces explications.
    j’aimerai avoir quelques exemple sur ce qui n’est pas possible ou difficilement possible avec ajax qui est peut être réalisé simplement avec REST?
    je dois étudier REST et finalement n’étant pas programmeur de première j’ai du mal sur ce point là par exemple.

  5. Gelnior says:

    Les possibilités avec Ajax sont assez grandes si on est patient. En effet comme le fait de développer dans un navigateur est assez neuf, on passe souvent son temps à réinventer la roue. Toutefois il existe deux supers frameworks pour développer en ajax JQuery (API javascript) et GWT (qui génère du javascript à partir de code java). Ces deux derniers facilitent grandement tout développement. De plus HTML5 et SVG permettent d’aller encore plus loin, le premier offrant de la souplesse en plus aux applications javascript et le second permettant de faire des widgets évolués (manipulation de graphes par exemple).

    Pour REST, il ne faut pas avoir peur. Cela demande juste de modifier sa façon de raisonner sur une application web. Au final c’est assez naturel d’identifer et d’accéder à ses données par des URLs. Voici un article qui m’avait bien aidé à appréhender la chose à l’époque :
    http://www.biologeek.com/rest,traduction,web-semantique/pour-ne-plus-etre-en-rest-comprendre-cette-architecture/

    En espérant avoir répondu à vos questions !

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: