Le développement Web est un univers dynamique et instable où se succèdent acteurs et technologies avec plus ou moins de succès. Même le vénérable HTML se voit aujourd’hui concurrencer en tant que vecteur d’informations par des technologies orientées multimédia comme peuvent l’être Flash ou Silverlight…
À ce titre, ces dernières années ont marqué un changement radical dans la manière de penser les développements Web : c’est l’avènement du Web 2.0 – notez que je hais ce terme, mais il est, et de loin, le plus consensuel et le plus apte à décrire l’ensemble des changements qu’a connu le Web -, avec en Guest Star, le controversé Javascript. Qu’on le vénère ou qu’on l’abohrre, on ne peut que reconnaître son apport au niveau de l’intéraction utilisateur… jusqu’à devenir le véritable catalyseur de la mutation des développements Web? Vous n’y croyez pas? Luke Kenneth, via Advogator, nous en livre une analyse de haut niveau avec Blurring of MVC lines: Programming the Web Browser.
L’auteur décrit les 4 approches du développement Web MVC telles qu’elles existent actuellement :
- Vue en HTML pure.
Il s’agit de l’utilisation historique du HTML. Des vues en HTML pure, et une programmation métier essentiellement via CGI-BIN. Les domaines de compétences sont ici bien établis entre les différents composants. - Mix HTML / Javascript.
L’introduction du Javascript est légère et répond à des problématiques concrètes : la validation des données et l’aide à la saisie – j’omets sciemment l’aspect graphique -. Il en résulte une expérience utilisateur plus agréable et un allègement de la charge serveur, celui-ci n’ayant plus à gérer de nombreuses saisies incorrectes. Dans cette configuration, certaines compétences de la couche métier migrent vers le client Web. - Mix HTML / Ajax.
L’invasion se poursuit via une stratégie "innovante" : XMLHttpRequest – à noter la pique sur le caractère "innovant" – . La construction de la vue se complexifie, le gestion du cycle de vie devient un science à part entière mais l’expérience utilisateur est encore améliorée. La complexité d’intégration pousse le développeur à utiliser un des nombreux framework ayant vu le jour pour cadrer ce type de développement. - Javascript comme pière angulaire du développement.
Les rôles MVC du serveur Web et du client Web sont quasiment inversés et la nature même du développement Web est bouleversée. Si le développeur code toujours en Java ou en Python, une phase de génération existe et c’est finalement du Javascript qui sera exécuté.
La pièce maîtresse, le Javascript, dicte la structure et la forme du développement. Son impact est tel que l’auteur prédit la généralisation de technologies telle que GWT ou Pyjama, qui finalement, ne sont que des générateurs de code vers Javascript à partir de languages de haut niveau – respectivement Java et Python -. Un des commentaires va encore plus loin et place Javascript comme le nouveau bytecode du développement Web.
En bref, une analyse poussée et argumentée sur la mutation du développement Web. À mettre en toutes les mains.