Leistungen
Leistungen
Überblick
Leistungsangebot
Kernkompetenzen
Schulungsthemen
In-House-Schulungen
Offene .NET-Seminare
Offene WPS-Seminare
Beratung
Coaching
Support
Softwareentwicklung
Entwickler-Vermittlung
.NET/Visual Studio
TFS/ALM/Scrum
Webprogrammierung
PowerShell
Konditionen
Anfrage/Kontakt
Beratung/Coaching
Beratung/Coaching
Beratungsthemen
Coaching
Unsere Berater
Referenzkunden
Konditionen
Angebotsanfrage
In-House-Schulungen
In-House-Schulungen
Überblick
Themen/Fachgebiete
Schulungskonfigurator
Konzepte
.NET/Visual Studio
C#
VB.NET
ASP.NET
Moderne Webanwendungen
TFS/ALM/Scrum
PowerShell
Konferenzvortraege
Referenzkunden
Unsere Trainer
Konditionen
Angebotsanfrage
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, C#, VB, Visual Studio
.NET, C#, VB, Visual Studio
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/4.5
Community
Forum
Kommerzielle Leistungen
ASP.NET
ASP.NET
Startseite
Lexikon
Sicherheit
Konfiguration
Global.asax
Tracing
Technische Beiträge
Klassenreferenz
Programmiersprachen
Entwicklerwerkzeuge
Softwarekomponenten
PowerShell
PowerShell
Überblick
Beratung
In-House-Schulungen
Öffentliche Schulungen
Codebeispiele
Commandlet Extensions
Offene PowerShell-Seminare
Inhouse-Seminare
Windows
Windows
Startseite
Windows Runtime (WinRT)
Windows PowerShell
Windows Scripting
Windows-Schulungen
Windows-Lexikon
Windows-Forum
Windows Scripting
Windows Scripting
Startseite
Lexikon
FAQ
Buecher
Architektur
Skriptsprachen
Scripting-Hosts
Scripting-Komponenten
COM/DCOM/COM+
ADSI
WMI
Scripting-Tools
WSH-Editoren
Codebeispiele
ASP.NET
.NET-Scripting
Forum
Links
Kommerzielle Leistungen
Service
Service
Website-FAQ
Anmeldung/Login
Leser-Registrierung
Gast-Registrierung
Nachrichten/RSS
Newsletter
Foren
Weblog
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
Weitere Websites
Tag Cloud
Impressum
Rechtliches

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 (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

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 [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.

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.

Aktueller Status und Einsatzgebiete von Silverlight


In den letzten Monaten wurde immer wieder berichtet, dass Microsoft seine Begeisterung für Silverlight verloren hat, nun HTML5 und JavaScript favorisiert. Es wird vermutet, dass es nach Silverlight 5 keine neue Hauptversion mit weiteren signifikanten neuen Features mehr geben wird.

Dennoch hat Silverlight (zumindest vorerst) weiterhin einen Platz im Portfolio der Web-Anwendungsentwickler, denn (noch) ist die Arbeit mit Silverlight wesentlich produktiver als mit HTML5 und JavaScript. Das basiert vor allem der Verwendung der Sprachen C# und Visual Basic sowie der reichhaltigen Silverlight-Klassenbibliothek sowie der hilfreichen Entwicklungsumgebung Visual Studio. Zudem gibt es bei Silverlight keine Probleme mit der Browserkompatibilität. In jedem Browser, in dem die Silverlight-Laufzeitumgebung als Plug-In installiert ist, läuft Silverlight gleich. Das Problem ist freilich, dass bei weitem weniger Benutzer die Silverlight-Laufzeitumgebung als die Flash-Laufzeitumgebung in ihrem Browser haben (vgl. www.riastats.com). Silverlight ist daher eine sehr gute Wahl für Intranets und ggf. Extranets, in denen man die Installation des Silverlight-Plug-Ins durchführen bzw. durchsetzen kann, aber keine gute Wahl für das öffentliche World Wide Web. Es gab eine Portierung von Silverlight auf Unix/Linux unter dem Namen Moonlight, die aber auch inzwischen eingestellt ist (vgl. http://www.heise.de/developer/meldung/Freier-Silverlight-Klon-Moonlight-eingestellt-1586174.html).

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
    ActiveX Data Objects
    Microsoft Expression
    Entwicklungsumgebung
    Visual Basic .NET
    Internet Explorer
    Managed JScript
    Windows Phone 7
    World Wide Web
    Windows Vista
    Windows Forms
    Windows Live
    COM-Objekt
    JavaScript
    System.Xml
    IronPython
    Webservice
    System.Net
    Moonlight
    Datenbank
    Ressource
    .NET 3.5
    .NET 4.0
    live.com
    IronRuby
    Netzwerk
    ActiveX
    JScript
    Stream
    Tiger
    Ruby
    Mono


    Dienstleistungen:

    Beratung/Consulting zu Microsoft Silverlight

    Support zu Microsoft Silverlight

    Schulungen zu diesem Thema:
    .NET 3.5-Crashkurs - Überblick über das .NET Framework 3.5 und Visual Studio 2008 für Umsteiger von .NET 2.0/3.0

    .NET Akademie: Webservices, verteilte Systeme, Workflows und SOA mit .NET 4.5 (Agenda des öffentlichen Seminars)

    .NET Micro Framework - Embedded-Entwicklung mit .NET/C# oder C++

    ASP.NET Webforms (System.Web) - Basiswissen

    Datenzugriff auf Oracle 9i / 10g / 11g mit .NET Framework

    Java Swing-Programmierung: Entwicklung grafischer Benutzeroberflächen mit Swing

    Kryptografie

    Microsoft Silverlight 2.0/3.0/4.0/5.1

    Microsoft SQL Server 2012 - die Neuerungen gegenüber SQL Server 2008 (Update-Schulung)

    Neuerungen in Internet Information Server/Internet Information Services 7.0/7.5/8.0 (IIS 7.0/7.5/8.0)

    Neuerungen in Visual Studio 2008

    Silverlight 4.0 - Die Neuerungen für Umsteiger von Silverlight 3.0

    Unit Testing / Testgetriebene Entwicklung / Test Driven Development (TDD) von .NET-Anwendungen

    Visual Studio 2010/2012 - Modellierung/Softwarearchitektur

    Visual Studio LightSwitch - Rapid Application Development (RAD) für Silverlight und HTML5

    Webanwendungsarchitektur und Einführung in die aktuellen Web-Technologien (Modern, mobile Webanwendungen)

    Windows 8/Windows 8.1 für Anwender/Benutzer (Umstieg von Windows XP nach Windows 7)

    Windows-Desktop-Anwendungen mit .NET und C#: Windows Forms, Windows Presentation Foundation (WPF), GDI+ und Multi-Threading

    Windows-Desktop-Anwendungen: Von den .NET- und C#-Grundlagen zu Windows Forms und Windows Presentation Foundation (WPF)

    WPF und Silverlight für Grafiker/Designer

    Gesamter Schulungsthemenkatalog