Laurent Ellerbach (Microsoft) "Silverlight améliore son intégration à Windows, mais perd en portabilité"

Accélération matérielle GPU, intégration des données, optimisation des temps de latence vidéo... Tour d'horizon des principales évolutions du framework de Microsoft.

JDN Développeurs. Vous avez annoncé le lancement d'une beta de Silverlight 5 pour le deuxième trimestre 2011. Quelles en seront les principales nouveautés ?

Laurent Ellerbach. Sur la partie média, nous avons amélioré les performances du décodage vidéo, notamment pour le H264. Nous avons ajouté des contrôles pour lire une vidéo plus ou moins vite, ainsi que la possibilité d'utiliser les télécommandes de PC. Le DRM [ndlr gestion des droits numériques] fait l'objet d'un nouveau module permettant d'affiner la gestion de règles d'accès. Il est utilisé en pilote au sein du portail que Canal+ est en train de lancer pour diffuser en HD sur le Web ses cinq principales chaines télévisées. 

Nous avons beaucoup travaillé sur la performance de diffusion des contenus. La technologie IIS Smooth Streaming que nous avons intégrée avec la version 4 de Silverlight a été améliorée en vue de réduire le temps de latence des vidéos en haute définition diffusées en streaming. Elle analyse l'évolution de la bande passante disponible en cours de lecture, et choisit parmi les flux vidéo encodés le plus adapté en termes de poids. Elle permet de passer d'un flux à l'autre en cours de lecture. Cette méthode contribue à réduire le buffering [ndlr mise en mémoire tampon]. Elle est aussi intéressante pour gérer les pics de charge sur un site. 

Une autre évolution de cette version porte sur l'introduction de la 3D. Cette possibilité tire partie de l'accélération graphique GPU. Elle est disponible à la fois pour Windows et Mac. Nous supportons également le PixelSnapping qui optimise la lecture des textes. Pour les applications Silverlight exécutées en dehors du poste de travail, Silverlight 5 supporte le multi-fenêtrage.

L'intégration de Silverlight avec l'OS et les données est-elle améliorée ?

C'est l'un des principaux focus de cette nouvelle version. La version 4 de Silverlight accédait aux composants COM de Windows. Avec Silverlight 5, nous étendons les possibilités d'intégration. L'infrastructure peut notamment faire appel aux API Windows, et plus globalement aux codes non-managés, en C++ par exemple. Silverlight 5 pourra également lire des documents Office, et se connecter aux librairies de documents de l'OS, mais également accéder aux périphériques de stockage mobiles type clé USB. 

"Une mise à jour de Visual Studio 2010 va sortir pour prendre en charge Silverlight 5"

Pour les développeurs, nous introduisons le Data Binding Debugging qui facilite le débogage du code XAML, en mode design ou exécution. Silverlight 5 intègre également le patern Model-View-ViewModel qui permet d'améliorer le découpage l'application [entre l'interface utilisateur, la logique de l'application et les données, ce qui améliore la maintenance et les tests unitaires ndlr].  

En termes d'OS supportés, Silverlight a-t-il pour vocation d'être multi-plate-forme ?  

Il l'est déjà. Microsoft propose des implémentations de Silverlight pour Windows et Mac. Sur Windows, l'infrastructure est disponible à la fois sur les versions serveur, client et mobile, mais également pour Windows Azure. Le projet Moonlight de Novell offre une implémentation Open Source de Silverlight qui tourne sous Linux. Dans le cadre de notre accord avec Novell, nous avons fourni des données techniques sur Silverlight, ainsi que nos jeux de test pour valider l'implémentation pour Linux.

Mais, il est vrai qu'une applications Silverlight conçue pour Windows offrira potentiellement beaucoup plus de possibilités que pour les autres plates-formes, dans la mesure où les capacités d'intégration avec l'OS sont beaucoup plus grandes. Ce qui limite aussi la portabilité de ces développements sur les autres systèmes. 

Flash demeure le grand concurrent de Silverlight, et la technologie d'Adobe est présentes sur beaucoup plus d'OS, notamment mobiles... 

Entre Mac et Windows, Silverlight est présent sur les principaux OS du marché. Flash supporte le poids d'un historique qui le rend moins performant sur l'accès aux données. Silverlight étant plus récent, nous avons pu inclure cette dimension dès la conception du framework. Il s'intègre également à Visual Studio, un IDE que beaucoup de développeurs connaissent bien.  

Quand Visual Studio sera-t-il mis à jour pour prendre en charge Silverlight 5 ?

Silverlight va sortir en version finale d'ici fin 2011. Un kit de développement logiciel et des compléments pour Visual Studio et pour Expression Blend seront lancés dans la foulée. Expression Blend permet de créer des interfaces graphiques Silverlight reposant sur WPF ou XAML, en intégrant des contrôles et du binding de données . En amont d'un projet, il peut supporter un processus pour soumettre un prototype aux futurs utilisateurs. Visual Studio Team System orchestre de son côté les différents intervenants du projet, chefs de projet, graphistes et développeurs, autour d'un serveur unique. En aval, des processus de test et de recette couvriront les différents types de tests, notamment les tests de rendu d'interface Silverlight. Au final, Visual Studio offre un IDE simple à appréhender et surtout très intégré, à la différence d'Eclipse par exemple qui est beaucoup plus modulaire et complexe. 

Laurent Ellerbach est en charge au sein de Microsoft France des relations avec les développeurs, les architectes et les designers. Son équipe couvre Visual Studio, Expression, et les technologies .Net et Silverlight. Laurent Ellerbach est ingénieur diplômé de l'Ecole Nationale Supérieure d'Arts et Métiers (ENSAM) et titulaire d'un Mastère en marketing et communication de l'Ecole Supérieure de Commerce de Paris (ESCP-EAP).