Aperçu des outils de la suite Expression de Microsoft

Publié le Mis à jour le

J’ai pu passer une journée au MTC (Microsoft Technical Center) pour une présentation de WPF (Windows Presentation Foundation) et Silverlight, par le biais d’une mise en application rapide de Blend, l’outil de création d’interfaces riches intégré à la suite Expression.

Petit tour d’horizon des outils Microsoft :

  • Silverlight est un plug-in cross-platform qui permet de jouer des animations sur le web. Il se veut un concurrent direct de Flash sur le web, mais avec encore des parts de marché très faibles.
  • WCF Windows Communication Foundation : des technos .NET d’infrastructure articulées autour des services web.
  • WCS Windows Card Space (anciennement InfoCard) : composant de .NET3 qui vise à simplifier la gestion des identités et profils des utilisateurs sur le net. L’idée serait d’utiliser un seul et même profil pour tous services online nécessitant une authentification, allant des services publics aux services privés.
  • WF Workflow Foundation : représente le modèle de programmation, le moteur et les outils permettant de créer des applications dotées de fonctionnalités de workflow sous Windows.
  • WPF Windows Presentation Foundation est comparable à AIR d’Adobe (Adobe Integrated Runtime) puisqu’il permet de créer des applications de bureau, sauf qu’il n’est pas cross-platform : il ne crée que des applications pour Windows.
    WPF est aussi là pour sortir WinForm du marché, malgré des entreprises récalcitrantes, car le passage de l’un à l’autre devrait entrainer des changements d’architecture conséquents d’après les témoignages de quelques développeurs .NET que j’ai pu rencontrer.

Il est d’ailleurs important de différencier la notion de RIA chez Microsoft et chez Adobe :

  • Rich Internet Application chez Adobe
  • Rich Interactive Application chez Microsoft

Si bien que WPF est une application RIA pour Microsoft mais pas pour Adobe, quand SilverLight et Flash permettent de faire des RIA pour les deux… voilà pourquoi la notion des uns et autres peut être subtile.

Avec cette palette d’outils, Microsoft n’avait pas vraiment prêté attention aux métiers du design avant ces deux dernières années. L’éditeur tente de se racheter en proposant Blend, bientôt dans sa version 3, qui se veut un outil destiné à la fois aux graphistes et aux développeurs (à qui on pourra toutefois conseiller de continuer à travailler sous Visual Studio pour manque de debugger sérieux par exemple). D’autres produits complémentaires sont disponibles :

  • Expression Design présenté comme le compagnon de Blend. C’est un éditeur graphique qui nous a été présenté comme un Illustrator léger (donc de dessin vectoriel). Il permet bien sûr d’intégrer du bitmap et de réaliser des interfaces web, mais n’a pas été non plus annoncé comme un concurrent de Photoshop.
  • Expression Encoder : qui permet d’utiliser la vidéo dans SilverLight et WPF, notamment en HD et aussi d’intégrer des modèles 3D directement depuis les fichiers natifs des gros logiciels du marché.

Preuve que Microsoft veut tirer partie des leçons du passé, il ne délaisse pas les concepteurs non plus en sortant prochainement SketchFlow sous la forme d’un module de Blend. SketchFlow est sensé intégrer réellement la phase de conception et de prototypage dans le flux de production. L’idée semble plutôt bonne si la réutilisation est possible, au contraire d’un soft comme Axure, très pratique, mais qui ne peut pas être intégré.

Une manière de travailler différente ?

Microsoft indique que grâce aux outils de sa suite Expression, développeurs et intégrateurs ne se marchent plus sur les pieds, mais au contraire, peuvent travailler de concert sur la même application et les mêmes éléments, révolutionnant ainsi la chaine de travail que l’on connait.
Malheureusement, je n’ai pas pu le tester car nous nous sommes concentrés surtout sur l’aspect créatif de l’outil en le comparant souvent à Flash.

Toutefois, il est certain que Visual Studio est bien intégré à Blend si bien qu’il est très facile de passer de l’un à l’autre. Contrairement à MXML sur Flex, XAML n’est orienté que vers la présentation, aucun code exécutable n’y est inséré, si bien que le designer n’intervient pas sur les mêmes fichiers que le développeur. Le designer doit par contre faire référence aux bons gestionnaire d’événements qui seront codés par le développeur.

Il est certain qu’Adobe ne communique pas aussi précisément sur les interactions designer/developper, mais cela ne signifie pas qu’il n’est pas possible de faire travailler ces deux profils en même temps sur le projet. On se souviendra en effet de la manière dont il est possible de faire travailler un développeur sur des fichiers .as et le designer sur les .fla en même temps grâce à la POO.

Blend

Ce qu’on peut dire au premier abord, c’est que l’interface ne répond pas aux codes visuels auxquels les graphistes sont habitués : tout l’environnement étant créé en vectoriel, les boutons, palettes et champs ont un aspect un peu plus grossier que dans Flash ou Photoshop par exemple.

L’ergonomie du produit est aussi complètement différente et nécessite une remise en question de ses habitudes de travail. C’est un outil à la fois de design et développement. On pourrait le comparer à un Flash « light » embarqué dans un Flex. La seule réponse d’Adobe à ce sujet est Flash Catalyst qui est attendu dans les prochains mois.

Après cette journée de prise en main, il m’apparait que Blend est plus un outil dédié à la création d’interfaces animées et conviviales qu’un produit concurrent de Flash. En effet, l’édition graphique est moins aisée (c’est aussi peut-être une question d’habitude, il est vrai) et il est impossible de faire de l’animation image par image. Tout est interpolation. D’ailleurs le storyboard (équivalent de la timeline) n’est visible qu’à la demande alors que c’est l’élément central sur Flash.

Dans ce contexte d’utilisation, on peut tout de même dire que Microsoft a étudié son sujet en proposant des raccourcis certains là où il faut systématiquement coder sous Flash, comme par exemple :

  • centrage systématique de la scène en deux clics,
  • placement des éléments en automatique : leurs dimensions seront calculées en fonction de la place restante dans leur colonne d’appartenance,
  • création de colonne et rangée sur la scène pour définir le comportement des éléments s’y trouvant. C’est, entre autre, pour cette raison que Blend semble être un logiciel de mise en page.

L’édition XAML est disponible à tout moment, un peu comme dans les éditeurs tels que DreamWeaver où l’on peut avoir une vision wysiwyg et codée.

XAML est une formalisation du graphisme en plaçant les éléments dans l’espace et en décrivant leur propriétés graphiques (dégradé, forme, contour, …). A ce titre il est très différent de MXLM.

Cette petite journée m’a paru d’abord décevante, car je n’ai pas pu vérifier les allégations de Microsoft et je suis toujours impatient de découvrir de quelle manière ils font travailler des métiers si différents de concert. Toutefois, à travers Blend, j’ai pu constater que l’éditeur a tout de même pas mal réfléchi son produit.

De plus, l’arrivée d’autres modules comme SketchFlow ne ferait que resserrer les maillons de la chaine de production tout en permettant une intégration continue fluide. Rendez-vous donc prochainement pour vérifier de plus prêt.

Quelques exemples Silverlight en ligne