Was ist Silverlight?
Silverlight (ehemals „WPF/E“) ist eine neue Webpräsentationstechnologie, die auf verschiedenen Plattformen ausgeführt werden kann. Es erlaubt die Erstellung aufwändiger, visuell beeindruckender, interaktiver Funktionen, die überall ausgeführt werden können: innerhalb von Browsern und auf verschiedenen Geräten und Desktopbetriebssystemen (wie z. B. Apple Macintosh). In Übereinstimmung mit WPF (Windows Presentation Foundation), der Präsentationstechnologie in Microsoft .NET Framework 3.0, bildet XAML (Extensible Application Markup Language) die Grundlage für die Silverlight-Präsentationsfunktionen.
Dieses Whitepaper bietet eine schrittweise Einführung in die Grundlagen von Silverlight und die vielfältigen Microsoft-Tools zum Erstellen aufwändiger grafischer Websites, einschließlich Microsoft Expression Blend, Microsoft Visual Studio 2005 und XAML. Zunächst ein kurzer Überblick über die Hintergründe der Entwicklung von Silverlight und seine Einordnung in Bezug auf andere Entwicklungen.
Die Geschichte der Webentwicklung: Übergang zu Web.Next
Als das World Wide Web von Tim Berners-Lee am CERN erfunden wurde, entwickelte er es als netzwerkbasiertes System, das die Speicherung und Verknüpfung statischer Dokumente ermöglichen sollte. Im Verlauf der Jahre kamen weitere Neuerungen hinzu. Der nächste logische Schritt bestand darin, „aktive“ Dokumente mit zeit- oder benutzerspezifischen Informationen dann zu erstellen, wenn sie angefordert wurden. Dies wurde durch Technologien wie z. B. CGI ermöglicht. Mit der Zeit wurde die Möglichkeit, Dokumente im Web zu generieren, sehr wichtig, und die Technologie wurde mittels CGI, Java, ASP und schließlich ASP.NET weiterentwickelt.
ASP.NET war ein Meilenstein, da es Entwicklern ermöglichte, auf Grundlage des Paradigmas der Serverentwicklung und mithilfe von Best-of-Breed-Tools der Visual Studio-Produktfamilie schnell hochwertige Webanwendungen zu entwickeln.
Als ein großes Problem für Webanwendungen erwies sich die Benutzerfreundlichkeit. Technische Einschränkungen verhinderten, dass Webanwendungen die gleiche Benutzerfreundlichkeit wie Clientanwendungen mit lokalen Daten boten.
Das XMLHttpRequest-Objekt, das von Microsoft als Teil von Internet Explorer 5 im Jahr 2000 veröffentlicht wurde, wurde die Grundlage des asynchronen JavaScript und der XML (AJAX)-Technologie. Dadurch konnten Webanwendungen dynamischer auf Benutzereingaben reagieren, indem kleinere Teile einer Webseite aktualisiert wurden, ohne den Inhalt vollständig neu zu laden. Innovative Lösungen die auf AJAX aufbauten, wie z. B. Windows Live Local-Karten, ließen Webanwendungen einen weiteren Schritt in Richtung einer clientähnlichen Funktionalität für Benutzer machen.
Silverlight ist der nächste Schritt in der Entwicklung einer möglichst vielfältigen Funktionalität für Benutzer, die Anwendungsentwickler und Designer ihren Kunden bieten können. Dadurch sind Designer in der Lage, ihre Kreativität zu entfalten und ihre Arbeit in einem Format zu speichern, das im Web direkt funktioniert. In der Vergangenheit hätte ein Designer eine Website und die Funktionalität für Benutzer entworfen, indem er Tools verwendet, die vielfältige Ergebnisse liefern. Um sie aber bereitstellen zu können, hätte der Entwickler seine Ergebnisse an die Einschränkungen der Webplattform anpassen müssen. Im Silverlight-Modell können Designer die gewünschte Funktionalität für Benutzer erstellen und sie in XAML ausdrücken. Dieses XAML kann dann durch einen Entwickler mithilfe der Silverlight-Laufzeitumgebung direkt in eine Webseite eingefügt werden. Deshalb können beide besser als je zuvor zusammenarbeiten, um eine reichhaltige Clientfunktionalität für Benutzer bereitzustellen.
XAML ist XML und somit textbasiert. Es ist eine Firewall-freundliche und leicht zu prüfende Beschreibung reichhaltiger Inhalte. Obgleich es mit anderen Technologien (z. B. Java Applets, ActiveX und Flash) möglich ist, reichhaltigere Inhalte als DHTML, CSS und JavaScript bereitzustellen, senden diese Technologien ausnahmslos binären Inhalt an den Browser. Dies macht es schwierig, die Sicherheit zu überwachen – ganz zu schweigen davon, dass eine Aktualisierung schwierig ist, da jede Änderung bedeutet, dass die gesamte Anwendung neu installiert werden muss. Das ist nicht besonders benutzerfreundlich und kann zur Stagnation bei Seitenaufrufen führen. Wenn Silverlight verwendet und eine Änderung am reichhaltigen Inhalt notwendig wird, wird serverseitig eine neue XAML-Datei generiert. Wenn der Benutzer das nächste Mal die Seite besucht, wird dieses XAML heruntergeladen, und die Funktionalität ohne Neuinstallation aktualisiert.
Das Herzstück von Silverlight ist das Browsererweiterungsmodul. Dieses rendert das XAML und zeigt die entstandene Grafik im Browser an. Das Browsererweiterungsmodul steht als kleiner Download bereit (unter 2 MB), der bei Bedarf installiert werden kann, wenn der Benutzer eine Website aufruft, die Silverlight-Inhalt enthält. Dieses Modul macht das zugrunde liegende Framework des XAML für JavaScript-Entwickler verfügbar. Dadurch wird Interaktion mit dem Inhalt auf Seitenebene möglich. Deshalb kann der Entwickler zum Beispiel Ereignishandler schreiben oder den XAML-Seiteninhalt mittels JavaScript-Code ändern.
Weiterlesen bei Microsoft...
(Quelle Microsoft)