Leistungen
Leistungen
Überblick
Leistungsangebot
Kernkompetenzen
Schulungsthemen
In-House-Schulungen
Offene .NET-Seminare
Offene WPS-Seminare
Beratung
Support
.NET/Visual Studio
TFS/ALM/Scrum
Webprogrammierung
PowerShell
Konditionen
Anfrage/Kontakt
In-House-Schulungen
In-House-Schulungen
Überblick
Themen
Schulungskonfigurator
Konzepte
.NET/Visual Studio
C#
VB.NET
ASP.NET
TFS/ALM/Scrum
PowerShell
Konferenzvortraege
Referenzkunden
Trainerprofile
Konditionen
Anfrage
Offene Schulungen
Offene Schulungen
Überblick .NET-Seminare
.NET/C#-Basisseminar
WPF (Desktop)
ASP.NET/AJAX (Web)
WCF/WF (SOA)
ADO.NET/EF (Data)
Windows PowerShell
.NET
.NET
Startseite
Beratung/Training
Offene .NET-Seminare
Einführung
Lexikon
Artikel
Bücher
Klassenreferenz
Programmiersprachen
Entwicklerwerkzeuge
Softwarekomponenten
World Wide Wings Demo
Codebeispiele
Scripting
ASP.NET
.NET 2.0
.NET 3.0/3.5
.NET 4.0
Community
Forum
Kommerzielle Leistungen
ASP.NET
ASP.NET
Startseite
Lexikon
Sicherheit
Konfiguration
Global.asax
Tracing
Mehr zu ASP.NET 1.x
Mehr zu ASP.NET 2.0
Klassenreferenz
Programmiersprachen
Entwicklerwerkzeuge
Softwarekomponenten
PowerShell
PowerShell
Überblick
Beratung
In-House-Schulungen
Öffentliche Schulungen
Codebeispiele
Commandlet Extensions
Windows Scripting
Windows Scripting
Startseite
Lexikon
FAQ
Buecher
Architektur
Skriptsprachen
Scripting-Hosts
Scripting-Komponenten
COM/DCOM/COM+
ADSI
WMI
WMI-Klassenreferenz
Scripting-Tools
WSH-Editoren
Codebeispiele
ASP.NET
.NET-Scripting
Forum
Links
Kommerzielle Leistungen
Windows Server
Windows Server
Startseite
Lexikon
Forum
Service
Service
Website-FAQ
Anmeldung/Login
Leser-Registrierung
Gast-Registrierung
Nachrichten/RSS
Newsletter
Foren
Weblog Deutsch
Lexikon
Downloads
Support
Kontakt
Literaturtipps
Publikationen
Publikationen
Redaktionsbüro
Bücher
Fachartikel
Leser-Portal
Autoren gesucht!
Rezensionen
Über uns
Über uns
Holger Schwichtenberg
Team
Referenzkunden
Kundenaussagen
Referenzprojekte
Partner
Site Map
Tag Cloud
Impressum
Rechtliches
AGB

Erklärung des Begriffs: Microsoft Silverlight (SL)
Was ist Microsoft Silverlight (SL)?

Zurück zur Stichwortliste



Begriff Microsoft Silverlight
Abkürzung SL
Synonyme/Aliase

Erläuterung des Begriffs Microsoft Silverlight

Silverlight ist eine reduzierte Version des Microsoft .NET Frameworks mit der man sowohl Plug-In-basierte Browser-Anwendung als auch eigenständige Desktop-Anwendungen schreiben kann.
Silverlight ist ein Ableger von WPF, also auch XAML-basiert. Der früherer Name war WPF/E (Windows Presentation Foundation Everywhere). Ursprünglich war Silverlight ein reines Browser-Plug-In als Konkurrenz zu Macromedia Flash. Silverlight kann jedoch seit Version 3.0 auch außerhalb des Browsers laufen ("Out-Of-Browser", kurz OOB). Seit Version 4.0 ist sogar ein Ausbrechen aus der Sandbox mit fast vollständigem Zugang zu lokalen Ressourcen möglich ("Trusted Application"). Silverlight wird damit immer mehr zu einer Konkurrenz zur großen Mutter .NET.

Allein vom Begriff her, muss man schon aufpassen: WPF in eine reine Oberflächenbibliothek im Rahmen des .NET Frameworks und klar abgrenzt von anderen nicht-visuellen Bibliotheken des .NET Frameworks. Silverlight ist hingegen ein Oberbegriff für alle Teile des Mini-.NET, sowohl die visuellen als auch die nicht-visuellen.

Die erste Version von Silverlight, die am 04.09.2007 erschienen ist, bot zunächst XAML als Oberflächenbeschreibungssprache sowie die Programmierbarkeit mit JavaScript. Die zweite Version ist jedoch ein Mini-.NET Framework, das nicht nur XAML, sondern das zahlreiche .NET-Bibliotheken (z. B. Netzwerkprogrammierung mit System.Net, Webservices mit WCF/System.ServiceModel, Abfragen mit LINQ, XML-Verarbeitung mit System.Xml) unterstützt und die Programmierbarkeit mit C#, Visual Basic, Managed Jscript, IronRuby und IronPython bietet.

Microsoft bietet Silverlight für die Betriebssysteme Windows Vista, XP, 2003, 2000 und 2008 sowie Apple OS X Tiger und Leopard an. Als Browser werden dabei unterstützt Internet Explorer (ab 6.0), Firefox (ab 1.5) und Safari (ab 2.0). Im Rahmen von Mono gibt es mit Moonlight auch eine Unterstützung für Unix / Linux, die Microsoft sogar ausdrücklich fördert [MIC01]. Microsoft spricht daher von Silverlight auch als einem Cross-Plattform .NET.

Silverlight verwendet auch XAML zur Oberflächenbeschrreibung, aber das Silverlight-XAML ist nicht 100%-kompatibel zum WPF-XAML. Zum einem sind – verständlicherweise – nicht alle XAML-Funktionen aus WPF in Silverlight verfügbar. Auf der anderen Seite gibt es aber auch einige syntaktische Eigenarten in Silverlight, die es in WPF noch nicht gibt. Dieses Kompatibilitätsproblem will Microsoft aber in der Zukunft beheben (vgl. Ankündigung [SG03]).

Die Architektur von Silverlight ist auf die Verwendung von Webservices auf einem Application Server ausgelegt (3-Tier-Architektur). Es gibt in Silverlight kein ADO.NET und kein ADO.NET Entity Framework. Silverlight muss sich Daten immer von einem Webservice beschaffen, auch in der OOB-Variante. Dieser Webservice, der dann im einfachsten Fall mit .NET implementiert ist, kann natürlich serverseitig alle Fähigkeiten von .NET nutzen. Allenfalls eine "Trusted Application" könnte über die COM-Objekte der ActiveX Data Objects (ADO) direkt mit einer Datenbank reden.
Aktuell ist die Silverlight-Version 4.0, die am 16.4.2010, also sehr kurz nach .NET 4.0, erschienen ist.

Versionen



1.0: Erschienen 4.9.2007 (Version 1.0.20816)
2.0: Erschienen am 14.10.2008 (Version 2.0.31005.0)
3.0: Erschienen am 10.7.2009
4.0: Erschienen am 15.4.2010
5.0: Geplant für 2011

Eigenschaften


- Läuft im Webbrowser als Plug-In
- Plattformunabhängig (derzeit Windows und Mac ab 10.4.8)
- Browserunabängig (Internet Explorer, Firefox, Opera, Safari)
- Basiert auf einer reduzierten Version der .NET Framework Common Language Runtime (CLR)
- Darstellung mit XAML (Teilmenge von XAML für WPF), tlw. Aber auch mehr Features als WPF (z.B. Deep Zoom, in WPF erst ab Version 4.0)
- Interaktion mit dem Browserfenster (durch JavaScript, DOM/DHTML/AJAX)
- Programmierung mit C#, Visual Basic .NET, Python und Ruby (ab Version 2.0)
- Einschließlich Funktionen von .NET 3.5 wie LINQ to Objects und Linq to XML (ab Version 2.0)
- Audio/Video/Video HD-Unterstützung (WMA, MP3, WMV, SMPTE VC-1, u.a.)
- AAC und H.264 ab Version 3.0; bisher nicht MPEG4 und Flash Video
- Digital Rights Management erst in Zukunft
- Unterstützung für Video Streaming
- Setzt nicht Windows Media Player voraus
- Microsoft bietet für kleinere Videos kostenfreies Hosting über Windows Live an (mit Werbung): http://streaming.live.com/
- Größe der Laufzeitumgebung: ca. 2 MB (Silverlight 1.0) bzw. 4.6 MB (2.0) bzw. 4.7 MB (3.0)
- Kostenfrei
- Werkzeuge: Microsoft Expression Blend (ab Version 1.1) und Visual Studio (ab Version 2008)
- Ergänzende Bibliotheken: Silverlight Controls for ASP.NET

Hintergrund


Silverlight liegt im Trend der Rich Internet Applications (RIA), Browseranwendungen die so aussehen und so zu bedienen sind, wie Desktop-Anwendungen. Verglichen mit den AJAX bietet Silverlight den Vorteil, dass man sich als Entwickler nicht die ganze Zeit mit Krücken über das hinweghelfen muss, was in HTML und HTTP eigentlich nicht so gedacht war. In die gleiche Produktkategorie wie Silverlight muss man auch Macromedia Flash/Flex und JavaFX sowie auch die ältere Technologien Java Applets und ActiveX einordnen. Gegenüber dem ärgsten Konkurrent Flash kann Microsoft vor allem der Durchgängigkeit der Plattform punkten. Flash hingegen hat die größeren Zahl bei den verfügbaren Entwicklern, den Ressourcen im Internet und – entscheidend – den Installationszahlen des Plug-Ins. Laut den Angaben von Hersteller Adobe befindet sich das Flash Player-Plugin auf 99% der "Internet-enabled desktops in mature markets" [http://www.adobe.com/products/player_census/flashplayer/]. Silverlight bringt es laut riastats.com aktuell auf rund 32%, wenn man Version 2.0 und 3.0 zusammenzählt.

Silverlight versus WPF


WPF-Oberflächen laufen – genau wie Windows Forms – als eigenständige Windows-Fenster oder im Fenster eines Webbrowsers als sogennante Web Browser Application (WBA). Sowohl WPF als auch Windows Forms erfordern jedoch beim Einsatz im Web ein vollständiges .NET Framework – zumindest das .NET Framework Client Profile – auf jedem Zielsystem. WBAs sind daher ebenso wie Windows Forms im Browser kaum zu finden, allenfalls in Intranet-Szenarien. Speziell für das Web-Szenario hat Microsoft daher Silverlight entwickelt, ein Mini-.NET Framework mit einer abgespeckten und syntaktisch veränder-ten Version von XAML. Silverlight läuft als Browser-Plug-In mit "nur" 5 MB Download (gegenüber mehr als 60 MB für ein vollständiges .NET Framework).

Beim Vergleich von Silverlight und WPF ist zu beachten, dass die beiden Begriffe unterschiedli-che Reichweiten besitzen. WPF ist eine Oberflächenbibliothek innerhalb des .NET Frameworks, die XAML verwendet. Silverlight hingegen ist einerseits ebenfalls eine Oberflächenbibliothek, die XAML verwendet, andererseits wird der Name Silverlight aber auch als kleineres Pendant zum .NET Framework gesehen und umfasst in diesem Sinne auch Bibliotheken, die nichts mit Benutzeroberflächen zu tun haben.

Artikel in gedruckten Medien

  • Webanwendungen mit ASP.NET 3.5 und AJAX Crashkurs
     (Webanwendungen mit ASP.NET 3.5 und AJAX Crashkurs, 2008)
  • Querverweise zu anderen Begriffen im Lexikon


    siehe http://www.microsoft.com/silverlight

    Windows Presentation Foundation Everywhere
    Windows Presentation Foundation
    .NET Framework Client Profile
    Microsoft Expression Blend
    Rich Internet Application
    ADO.NET Entity Framework
    Common Language Runtime
    Microsoft Expression
    ActiveX Data Objects
    Internet Explorer
    Visual Basic .NET
    Managed JScript
    Windows Forms
    Windows Vista
    Windows Live
    COM-Objekt
    IronPython
    System.Xml
    Webservice
    System.Net
    JavaScript
    Ressource
    Datenbank
    Moonlight
    Netzwerk
    .NET 3.5
    .NET 4.0
    IronRuby
    live.com
    JScript
    ActiveX
    Stream
    Tiger
    Java
    Mono