Enfin c'est ce que j'entends partout, et si tout le monde le dit, ça doit être vrai... Je suis actuellement sur un projet asp.net/ajax.net (le truc Microsoft qui fait de l'ajax) Le client avait le choix entre une interface ajax, ou une interface flash. Flash? mais mon dieu, on est des Coders! pas des bidouilleurs flashiens. Bref on a bien sur choisis ajax... Et là, on déchante: Ajax veut pas dire grand chose au final, oué, il y a bien l'objet xmlrequest, mais après? Quand on a reçus une information,on en fait quoi ? on le manipule en ....Javascript? est ce mieux que flash?

Moi, l'html, l'ajax, le DHTML, flash, je dois avouer, j'y connaissais rien il y a encore 6 mois... Donc je remet les choses un peu au point:

  • Doc:

Ajax est super,il y a des centaines de framework. C'est aussi le problème. C'est nouveau, quasiment aucune doc! Pour savoir si un framework est bon ou pas, il faut l'essayer. J'ai dut en tester 10 avant de prendre YUI. Ajax.net s'est révélé bordélique à souhait, incompréhensible à mon niveau. Je suis passé aussi par Dojo (l'archétype du projet libre qui promet beaucoup,mais reste en version 0.0.0.0.1 bêta). Bref, beaucoup de temps perdu. En flash, un coup de Google permet de voir des centaines de tutoriels.

  • Langage:

Ajax, pour résumer, c'est du coté serveur,le langage qu'on veut, et coté client javascript. Et du coté de flash? c'est de l'ECMAscript....mais, attendez un peu...c'est pas l'autre nom de javascript? Et oui,les deux se programment dans le même langage !!! Avec un net avantage pour Flash qui utilise les dernières spec du langage (donc on peut,si on veut, faire des class, typé les variables etc)

  • Vitesse: il suffit d'aller voir un site AJAX pour se rendre compte que....le CPU est bouffé a 100%

Et oui, et la, FF et IE sont aussi bete, une page javascript peut vous paralyser votre machine... Ouvrez donc 3 pages ajax, et hop,timeout de partout. C'est donc çà Ajax? un truc qui sur une machine a 2ghz, 1 giga de ram, me prends tout mon cpu car ...je déplace une image? Ajax,le futur? heuuuuu... De ce coté, flash, même en étant énormément plus lent qu'un langage compilé genre c++, vous laisse respirer, déplace des objets sur X courbes de bezier tout en changeant leur alpha. Quand même un peu plus raisonnable !

  • Compatibilité !

LE POINT! Et oui, flash, il n'y en pas partout, c'est nul, c'est pourri, ton site, personne pourra le voir ! Je pensais un peu ça aussi....avant de réaliser que les "blockbuster" des derniers mois, niveau site web,étaient tous...en flash. Dailymotion, deezer et youtube utilisent le "flv", qui est le format video de flash. Ces sites sont regardés en permanence par des millions de gens, les journaux intègres leurs videos en permanence et...j'ai jamais vu personne se plaindre! Et du coté d'ajax? oui c'est super sauf que...FF et IE continu de se bouder, alors prévoyez des aspirines, rien que manipulez l'alpha d'une image nécessite deux codes différents! Des extensions de FF bloque tout les scripts... Et n'oublions pas, vous devrez tester votre code sous SAFARI, Konqueror, et autres browser quasi inconnu... Comme vous êtes un peu fainéant, vous testerez que sous IE et FF...mais ie5?ie6? FF1.5? FF2.0? Au final, ça ne marchera donc pas partout...

Référencement: Sur ce point, les deux sont nul, puisque le robot ne peut pas connaitre le contenu du site...il faudrait que google, yahoo et co, commence à s'en occuper, au passage... Un petit avantage pour ajax, dont les parties statiques sont référençable, c'est déjà ça !

Voila, je pense avoir fait un tour d'un peu tout...au final,si je refaisais le projet, j'insisterais pour utilisé flash: c'est pas que j'aime bien,mais c'est plus adapté a bouger deux malheureux sprites sur un écran ;)