Sie sind hier: Startseite | Wissen
Werbung
Begriff Microsoft Silverlight
Abkürzung SL
Eintrag zuletzt aktualisiert am 11.03.2020

 Zur Stichwortliste unseres Lexikons

Was ist Microsoft Silverlight?

Silverlight ist eine reduzierte Version des Microsoft .NET Frameworks mit der man sowohl Plug-In-basierte Browser-Anwendung (Rich Internet Applications -. RIA) als auch eigenständige Desktop-Anwendungen schreiben kann.

Versionsgeschichte
Version 1.0: 4.9.2007 (Version 1.0.20816, basierte noch nicht auf .NET, sondern JavaScript)
Version 2.0 (vormals 1.1 genannt): 14.10.2008 (Version 2.0.31005.0)
Version 3.0: 9.7.2009
Version 4.0: 15.4.2010
Version 5.0: 9.12.2011
Version 5.1: 8.5.2012

Microsoft hat die Weiterentwicklung vion Sivlerlight eingestellt. Silverlight 5.x wird noch bis zum 10.12.2021 unterstützt.

Die französische Firma Userware hat am 9.3.2020 OpenSilver angekündigt, eine Reimplementierung von Microsoft Silverlight auf Basis von WebAssembly. Damit ist es möglich, Silverlight-Anwendungen in aktuellen Versionen von modernen Webbrowsern (Chrome, Edge, Firefox, Safari etc) zu betreiben.

Hintergründe
Silverlight ist ein Ableger von WPF, basiert also auch auf der Oberflächenbeschreibungssprache XAML. Der früherer Name von Silverlight 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. Silverlight wird auch im Windows Phone 7 für die App-Entwicklung verwendet.

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 war jedoch dann 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. 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.

Eigenschaften von Silverlight
  • 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 unterschiedliche 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.

Beratung & Support:

Schulungen zu diesem Thema:

 .NET und .NET Core für Entscheider (Entwicklungsleiter, Projektleiter, Teamleiter, Softwarearchitekten)
 Microsoft FSLogix (FSLogix Container)
 XML-Transformation mit eXtensible StyleSheet Language (XSL)
 Visual Studio LightSwitch - Rapid Application Development (RAD) für Silverlight und HTML5
 .NET 3.5-Crashkurs - Überblick über das .NET Framework 3.5 und Visual Studio 2008 für Umsteiger von .NET 2.0/3.0
 Java-Basiswissen (Grundlagen der Java-Programmiersprache)
 Windows Remote Desktop Services (RDS) / Windows Terminal Server / Remote Desktop Protocol (RDP)
 ADO.NET Entity Framework (EF) - Objekt-Relationales Mapping
 Mehrschichtiges Entwickeln mit .NET
 Windows Presentation Foundation (WPF) / XAML für Grafiker/Designer
 .NET Micro Framework - Embedded-Entwicklung mit .NET/C# oder C++
 Microsoft Exchange Server im Überblick (für Administratoren)
 Umstieg von .NET-Desktop-Entwicklung (WPF/Windows Forms) auf Webentwicklung (ASP.NET/ASP.NET Core + JavaScript/TypeScript mit Webframeworks wie Angular oder React)
 Android Studio
 Continuous Delivery & Build Automatisierung
 JavaScript/ECMAScript-Aufbauwissen
 MySQL für Fortgeschrittene
 Microsoft SharePoint-Administration mit der Windows PowerShell
 Java im Überblick
 PowerShell-Scripting: Skripte schreiben mit der Windows PowerShell
 Professional Scrum Developer .NET (PSD.NET) - Scrum für .NET-Entwickler - Offizieller Kurs gemäß scrum.org zur Vorbereitung auf die Zertifizierung - optional inklusive Zertifizierung
 Windows 8/Windows 8.1 für Administratoren
 Visual Studio für Einsteiger
 Angular - Basiswissen
 IT-Sicherheit
 Software bauen ohne Stress
 Zugriff auf Windows-Systembausteine (System.Diagnostics, System.Management)
 Dynamics 365 Customer Engagement / Microsoft Dynamics CRM für Anwender
 Agiles Planen und Analysieren mit Use Case 2.0 und UML
 Visual Basic Script (VBScript/VBS) - Sprachsyntax und Praxiseinsatz
 Anfrage für eine individuelle Schulung zum Thema Microsoft Silverlight;SL  Gesamter Schulungsthemenkatalog

Bücher zu diesem Thema:

 Moderne Datenzugriffslösungen mit Entity Framework Core 3.0 (Buchversion 6.x, Gedruckt)
 Moderne Datenzugriffslösungen mit Entity Framework Core 1.1 und 2.0-Preview2 (Buchversion 1.4)
 Einblicke in C# 6.0 (shortcuts 181) Kindle Edition
 Moderne Datenzugriffslösungen mit Entity Framework Core 1.1: Datenbankprogrammierung mit .NET/.NET Core und C# (gedruckte Ausgabe)
 Moderne Datenzugriffslösungen mit Entity Framework Core 1.1.1 und 2.0-Preview2: Datenbankprogrammierung mit .NET/.NET Core und C# (gedruckte Ausgabe)
 Moderne Datenzugriffslösungen mit Entity Framework Core 2.0/2.1 (Buchversion 5.x, Ebook PDF)
 Moderne Datenzugriffslösungen mit Entity Framework Core 3.0 (Buchversion 6.x, Kindle)
 Windows 8 für Administratoren
 Moderne Datenzugriffslösungen mit Entity Framework Core 2.1/2.2 (Buchversion 6.x, PDF)
 Moderne Datenzugriffslösungen mit Entity Framework 6 (Kindle)
 Moderne Datenzugriffslösungen mit Entity Framework Core 2.0 (Buchversion 4.x): Datenbankprogrammierung mit .NET/.NET Core und C# (gedruckte Ausgabe)
 Moderne Datenzugriffslösungen mit Entity Framework Core 1.1 (PDF)
 Moderne Datenzugriffslösungen mit Entity Framework 6 (EBOOK - PDF, MOBI, EPUB)
 Microsoft SQL Server 2008 Reporting Services
 Moderne Datenzugriffslösungen mit Entity Framework Core 3.1 (Buchversion 8.x, Kindle)
 Moderne Datenzugriffslösungen mit Entity Framework Core 5.0 (Buchversion 8.x, Kindle)
 Moderne Datenzugriffslösungen mit Entity Framework Core 5.0 (Buchversion 8.x, DRUCK)
 Windows Scripting Lernen 5. Auflage
 Windows 7 für Administratoren
 Moderne Datenzugriffslösungen mit Entity Framework Core 5.0 (Buchversion 8.x, PDF)
 Docker und die Containerwelt - Einstieg und Expertentipps rund um Docker-Container (shortcut)
 Ajax
 Moderne Webanwendungen für .NET-Entwickler: Server-Anwendungen, Web APIs, SPAs & HTML-Cross-Platform-Anwendungen mit ASP.NET, ASP.NET Core, JavaScript/TypeScript und Angular
 Moderne Datenzugriffslösungen mit Entity Framework 6 (gedruckte Ausgabe)
 Moderne Datenzugriffslösungen mit Entity Framework Core 1.x und 2.0: Datenbankprogrammierung mit .NET/.NET Core und C# (gedruckte Ausgabe)
 Webanwendungen mit ASP.NET 3.5 und AJAX Crashkurs
 Moderne Datenzugriffslösungen mit Entity Framework Core 2.1/2.2 (Buchversion 6.x, Kindle)
 Moderne Datenzugriffslösungen mit Entity Framework Core 3.0 (Buchversion 7.x, PDF)
 Moderne Datenzugriffslösungen mit Entity Framework Core 3.1 (Buchversion 8.x, DRUCK)
 Moderne Datenzugriffslösungen mit Entity Framework Core 2.0 (Buchversion 4.x): Datenbankprogrammierung mit .NET/.NET Core und C# (EBOOK - PDF)
 Moderne Datenzugriffslösungen mit Entity Framework Core 1.x und 2.0: Datenbankprogrammierung mit .NET/.NET Core und C# (EBOOK - PDF)
 Moderne Datenzugriffslösungen mit Entity Framework Core 1.1.2 und 2.0-Preview2: Datenbankprogrammierung mit .NET/.NET Core und C# (PDF)
 Moderne Datenzugriffslösungen mit Entity Framework Core 3.1 (Buchversion 8.x, PDF)
 Alle unsere aktuellen Fachbücher