Ce plugin de Microsoft a été réalisé comme alternative à Flash, il s'installe à la demande sur le poste
utilisateur et complète le navigateur avec une interface graphique
fonctionnant en interaction avec le serveur.
Il est basé sur un sous-ensemble de WPF,
allégé pour être portable.
Avec Silverlight on peut créer des RIA, des applications Internet riches, réaliser des interfaces étonnantes, intégrer des animations, des vidéos.
Il offre aux navigateurs une partie des capacités graphiques de WPF
et qui sont du même ordre que ce que fait Flash, le plugin de Adobe.
- Utilise XAML,
- Graphisme 2D vectoriel avec changement de taille des objets.
- Fonctionne avec Ajax, donc JavaScript, DOM
et XMLHttpRequest.
Silverlight fonctionne aussi en mode local sous environnement .NET. Sur le Web, les composantes sont accessibles par le biais de Active X sous Internet Explorer tandis que Firefox et les autres navigateurs utilisent le système de plugin de Mozilla.
Microsoft a abandonné tout développement sur Silverlight en faveur de HTML 5 qui remplit le même rôle, sans avoir la même simplicité toutefois. Mais l'ensemble des technologies associées à HTML 5 telles les workers et autres API, vont au-delà de ce que propose Silverlight. La version Linux, Moonlight ayant aussi été abandonnée, qui rend les applications non portables. Silverlight appartient de ce fait à l'histoire.
Conçu à l'origine comme une alternative à Flash, Silverlight n'a jamais été un outil vraiment universel. La version Linux est limitée et la version Mac peu développée.
En fait, Microsoft à récemment annoncé, par la voix de Bob Muglia, le responsable des "Tools Business", un recentrage de cet outil.
Silverlight est maintenant notre plateforme de développement pour Windows Phone. Notre stratégie à été modifiée. HTML est la seule vraie solution inter plateformes pour tout y compris iOS.
Silverlight devient pour Microsoft une plateforme de développement pour mobiles et la firme se recentre sur HTML 5 pour les applications Web universelles.
Intégration HTML
Silverlight se programme en JavaScript. Il utilise le DOM pour accéder aux élements de la page et les évènement JavaScript commandent les objets graphiques de Silverlight.
XAML
Il utilise XAML pour décrire l'interface graphique.
On peut générer le code XAML à partir de données
sur le serveur, et ainsi créer une application dynamique. La méthode
createFromXaml appellée en JavaScript crée la composante graphique
(widget) équivalente sur la page.
Graphisme vectoriel
La taille des images n'influe pas sur leur précision. On peut réduire
ou agrandir à volonté en conservant une image parfaite.
Le runtime est suffisamment rapide pour utiliser une vidéo comme
texture d'objet en 2D.
Vidéos
Il supporte les fichiers vidéos au format wmv, en haute définition. Plusieurs vidéos peuvent tourner en même temps et une certaine interactivité comme le zoom est possible.
La format de Adobe (anciennement Macromédia) est devenu une sorte
de standard sur le web. Il permet d'exécuter des applications graphiques
sur le navigateur, après téléchargement d'un plugin.
Il est utilisé aussi pour les applications Web, notamment par le framework
Laszlo.
Microsoft espèrait au départ le détrôner avec un produit adapté
aux technologies modernes du Web. C'est également un plugin, mais plus
léger et cela fonctionne aussi sur les principaux navigateurs.
Cependant Flash fonctionne sous Linux tandis que Microsoft ne fournit qu'un
runtime pour Windows et Mac. Cependant une version indépendant de Silverlight existe pour Linux, Moonlight.
Silverlight est plus rapide que Flash et a aussi l'avantage de permettre de développer dans plusieurs langages de programmation. Mais il ne fonctionne pas sur tous les systèmes.
Microsoft propose un ensemble d'outils dénommé Expression,
équivalent du logiciel d'Adobe Creative Suite. Visual Studio permet
également de produire des applications Silverlight.
Les contrôles Silverlight peuvent être utilisés de diverses
façon: ils sont définis avec une balise OBJECT ou EMBED, avec
un script JavaScript ou en chargeant un fichier XAML, ou encore un contenu
XAML est créé dynamiquement. Une fois défini, l'objet
est utilisé avec JavaScript.
Voir aussi
Plus d'informations