• Un peu de WPF...

    ... pour bien commencer terminer le week-end !

    Comme déjà présenté WPF (Windows Presentation Foundation) est la nouvelle couche de developpement d'interface graphique de .net 3.0 (et donc pour Windows XP & Vista). L'un des plus gros intérêt de ce nouveau joujou est la séparation entre l'interface graphique / et la logique de présentation. Pour bien me faire comprendre, je vous présenterai un "écran" en cours de réalisation sur l'une de nos applications dans ses différentes phases.

    Cet écran permet de rapprocher un compte en banque avec les opérations réalisées dans une gestion commerciale (factures, encaissement, dépots en banques, achats...). Son interface est relativement simple : une liste des opérations, un menu popup, et quelques critères.

    Premiere phase : schéma

    La premiere phase dans la vie de cet écran, correspond à un simple petit schéma (en l'occurence sous Visio), du look général de celui-ci.

    Deuxième phase : développement

    Après quelque temps passé dans les limbes de la gestion de projet et du développement, l'écran est enfin prêt, enfin il est terminé du point de vue fonctionnel (la copie d'écran ci-dessous date d'une version antérieure des spécifs...)

    Comme vous pouvez le constater, il/elle ne s'est pas foulé(e) pour la présentation...

    A la fin de cette phase du developpement, il est fréquent de devoir faire un point avec le développeur sur ce que l'on compte faire de son écran. En effet, il est souvent nécessaire que celui-ci modifie le programme en ajoutant quelques propriétés qui n'ont pas d'autres raisons d'exister que l'interface graphique. (Ici par exemple, j'ai ajouté des booleens permettant de determiner si l'élément est au crédit ou au débit, etc.).

    Troisième phase : une premiere "mise en page"

    La troisième phase correspond à un premier jet de l'interface, sans grandes frioritures, juste de quoi expliquer au designer ce que l'on attends de lui... Ce premier design est fait en interne de l'équipe de développement, pour pouvoir revenir à la phase précédente si nécessaire (pour les fameuses modifications "cosmétiques"). C'est aussi à partir de ce moment là que l'écran part en béta test : il n'y aura en effet plus de modification de la partie "code" dès lors que ce design rudimentaire est pret.

    Quatrième phase : le design complet.

    Bon, ben une fois arrivé la, il reste à passer la main à quelqu'un qui va devoir ajouter :

    • un look un peu plus sympa
    • quelques animations discrètes (fade-in fade-out sur les lignes etc.)

    Bon, la je n'ai pas encore le résultat, vu que ce n'est pas encore fait, mais normalement, cela devrait ressembler à ça (c'est tout du moins ce qui a été fait dans Microsoft Expression) :

    Voila, si vous comparez la phase N°2 - dont le design est vraiment digne d'un développeur - à ce qui est prévu dans la dernière phase, vous serez certainement étonné de la différence entre les deux. Et pourtant, une fois la phase N°2 terminée, le développeur ne touche plus du tout au code de cet écran (enfin, sauf pour corriger des bugs, evidemment). Toutes les modifications se font au niveau présentation grâce à un langage de présentation à la HTML et même, pour un grand nombre de celles-ci, grâce à une interface graphique de "skinning" digne d'un éditeur CSS (mais en beaucoup plus puissant)