vendredi 4 février 2011

04 - le flux général des données

Dans le post précédent, nous avions commencé à parler de modèle client, de transformation xsl ou de css. Afin de mettre tout cela en perspective, nous allons présenter le flux général des données auquel nous pensons à priori pour Clojadventure. En voici le schéma :

flux de données

Décrivons les étapes du flux de données :
  1. l'utilisateur interagit avec son navigateur web;
  2. le navigateur envoie une requête Http au serveur;
  3. le serveur renvoie dans la réponse Http le 'modèle client' :
    1. en fonction de l'action et de l'état courant, un nouvel état est créé. Utilisation du 'modèle serveur';
    2. cet état est sauvegardé en base. Utilisation du 'modèle de stockage';
    3. une vue partielle du nouvel état courant est assemblé. Utilisation du 'modèle client';
    4. cette vue est convertie en au format XML;
    5. ce 'modèle client' au format XML est retourné au navigateur web;
  4. le client interprète le 'modèle client' pour générer un rendu HTML :
    1. une transformation XSL permet de générer la structure HTML cible;
    2. le navigateur crée un rendu visuel à partir du HTML et des propriétés CSS;
  5. l'utilisateur obtient le retour visuel de sa requête.

Les principaux axes de travail identifiés afin de mettre en oeuvre ce flux de données sont :
  • la gestion des requêtes http : en se basant sur Google App engine et les librairies clojure;
  • le modèle serveur : en fonction du modèle client;
  • la gestion du stockage : en se basant sur Google App engine;
  • le modèle de stockage : en fonction du modèle serveur;
  • les modèles client : en fonction des écrans;
  • la conversion des données en xml : cf librairies clojure;
  • la transformation xsl : mise en place des techniques;
  • les fichiers XSL : en fonctions des écrans;
  • les fichiers CSS : en fonctions des écrans.

Ces axes seront développés dans les posts à venir.

Aucun commentaire:

Enregistrer un commentaire