Turbulences Admin
Turbulences Admin
Agile
8 December 2013

Êtes-vous du type SPA?

Bon, ceux qui me côtoient ces dernières semaines vont dire que je confond ma page Facebook personnelle avec le blog professionnel de novIQ. Ben non, je ne parle pas de SPA dans le sens de l’eau chaude, des jets et des remous mais plutôt dans le sens de Single Page Application. Avec la venue du développement mobile et la fusion ou la mise en commun des modèles de présentation web et mobile, sont apparus des technologies qui facilitent la mise en place de ce type de couche de présentation. Une SPA présente une interface qui ressemble à un modèle riche ou client-serveur contrairement à une application web traditionnelle basée sur les “post-back”. Évidemment, le langage JavaScript est au premier plan de cette solution. La technique AJAX qui permet la communication entre le client et le serveur est également au coeur d’une application de type SPA. Qui dit JavaScript dit bien sûr JQuery. Plein de librairies de contrôles évolués autant open-source (Jquery UI, Bootstrap, Sencha touch) que commerciales (Kendo UI et les contrôles de l’entreprise Telerik) sont disponibles. Enfin, une panoplie de frameworks tels que Backbone.js, Knockout, AngularJS ont vu le jour ces dernières années et sont supportés par une poignée de guerriers dans certains cas et des entreprises tel que Google pour d’autres.

Un de mes collègues sur mon présent mandat qui a assisté à la dernirè conférence Build de Microsoft me mentionnait que MS pousse pas mal sur des technologies qui aident à la mise en place de SPA tel que ASP.Net Web API et SignalR. Si Microsoft le dit, peut-être qu’on va commencer à voir ça chez nos clients….

En 1999-2000 chez mon ancien employeur, déjà on faisait des SPA. On a développé un progiciel de gestion de la distribution et on avait besoin d’un client léger (c’était la mode à cette époque) et de fonctionnalités riches puisqu’on devait s’intégrer à un autre progiciel qui était basé sur une interface de type Win32 entièrement sur le client. Nous avons donc développé des applications web, avec logique côté client en JavaScript et interaction avec le serveur à travers xmlHttpRequest (on n’appellait pas ça Ajax dans le temps cependant). Chaque unité de tâche était composée d’une seule page web.  Quand je regarde ça treize ans plus tard, c’était très avant-gardiste.