Silverlight 2.0: Das bringt die neue Version

(http://www.zdnet.de/magazin/39192780/silverlight-2-0-das-bringt-die-neue-version.htm)

von Tony Patton, 23. Juli 2008

Die jüngste Beta-Version von Silverlight 2.0 ist so interessant, weil sie sich stärker auf .NET-Technologien konzentriert. ZDNet gibt eine kurze Zusammenfassung dessen, was die neue Version der Plattform bieten wird.

Silverlight[1] stellt eine Plattform für RIAs (Rich Internet Applications) bereit, mit denen sich dynamische Benutzerschnittstellen entwickeln lassen, die plattform- und browserunabhängig sind. Die Präsentationstechnik tritt als Konkurrent in einem Bereich auf, den Technologien wie Adobe Flash und OpenLaszlo[2] besetzt haben.

Die Architektur hat sich verändert

Für die Entwicklung stellt Silverlight 2.0[3] eine große Veränderung gegenüber der ersten Ausgabe dar. Zwar werden Silverlight-Applikationen immer noch in einem Plug-in ausgeführt, das in allen wichtigen Browsern läuft, doch das Programmiermodell dahinter basiert stärker auf .NET-Technologien. Windows Presentation Foundation[4] (WPF) fungiert dabei als wichtige Komponente. Dadurch nähert sich die Silverlight-2.0-Entwicklung mehr an Adobe Flex an, das auf der Programmierung des Flex-SDK basiert.

Windows Presentation Foundation steht jetzt zur Verfügung

WPF ist das grafische Subsystem von .NET. Es wurde mit der Version 3.0 des .NET-Framework eingeführt. Die in Silverlight 2.0 enthaltene Version ist ein webbasiertes Subset. Es wird mittels einer abgespeckten Version der Common Language Runtime (CLR) des .NET-Frameworks in Silverlight 2.0 bereitgestellt. Es unterstützt Windows-, Macintosh- und Linux-Plattformen. Von der CLR können mehrere Instanzen innerhalb eines einzigen Prozesses ausgeführt werden. Damit sollte das Ausführen in einem Browser kein Problem darstellen.

Die Integration der CLR bedeutet, dass Silverlight-2.0-Applikationen mithilfe jeder .NET-Sprache, etwa VB.NET und C# oder JavaScript, erstellt werden können. Da die CLR abgespeckt ist, werden nicht alle Namensräume und Klassen, die im Basis-.NET-Framework verfügbar sind, für die Silverlight-Entwicklung zur Verfügung stehen. Dies betrifft eine Reihe erweiterbarer Steuerelemente, Netzwerkkomponenten, XML-Webservices, LINQ und anderes mehr.

WPF hat sein eigenes Programmiermodell. Damit kann der Entwickler Benutzerschnittstellen mit Formen, Dokumenten, Animationen und Medienobjekten erstellen. Durch die Integration von WPF enthält Silverlight 2.0 mehr als 20 Steuerelemente, die in der Benutzerschnittstelle eingesetzt werden können. Über sie lassen sich Daten anzeigen, aber auch Benutzereingaben entgegennehmen und die Anordnung von anderen Steuerelementen lenken. Darüber hinaus stehen Data-Binding, Skinning und die Unterstützung von Vorlagen zur Verfügung.

Anzumerken bleibt, dass in Silverlight 2.0 nach wie vor nach dem Ansatz entwickelt werden kann, den die erste Version mit XAML[5] und JavaScript bietet. XAML ist immer noch eine Microsoft-Technologie, gleichzeitig aber auch ein XML-Derivat. Schließlich wird XAML auch dazu verwendet, WPF-Benutzerschnittstellen zu erzeugen. Der Entwickler kann es sich also aussuchen, ob er mit den Schnittstellenobjekten und -daten mittels einer .NET-Sprache oder per JavaScript interagieren möchte. Silverlight-2.0-Applikationen kann jeder mit seinem Lieblingstexteditor oder einem XML-Editor schreiben. Auf diese Weise lässt sich das XAML von Grund auf erstellen. Auf einer höheren Entwicklungsstufe liegt die Verwendung von robusteren Entwicklungstools. Zwei Microsoft-Programme - Visual Studio und Expression Studio - bieten Alternativen, um das Entwickeln zu vereinfachen.

Die Microsoft Silverlight Tools Alpha für Visual Studio 2008 Beta 2[6] machen zahlreiche Silverlight-Steuerelemente für das Design von Benutzerschnittstellen verfügbar. Die Steuerelemente lassen sich ganz einfach per Drag and drop auf ein .NET-Webformular ziehen, um Silverlight-Funktionen zu nutzen.

Eine Beta-Version von Expression Studio 2[7] wurde vor Kurzem zur Verfügung gestellt. Es ist so konzipiert, dass es reibungslos mit Visual Studio zusammenarbeitet. Designer können Expression Studio 2 verwenden, um die Schnittstelle zu bearbeiten. Die Entwickler setzen hingegen Visual Studio für den Backend-Code ein. Das fördert nicht zuletzt die Zusammenarbeit der beiden Teams während der Entwicklung.

Im Internet steht jede Menge Informationen zur Verfügung, wie man die Silverlight-Entwicklung angehen kann. Besonders empfehlenswert ist Essential Silverlight 2 Up-to-Date[8] von Christian Wenz. Hier gibt es zahlreiches Informationsmaterial zur ersten Ausgabe.

Wird sich Silverlight durchsetzen?

Wie an den Funktionen zu sehen ist, die durch die Integration der .NET-Programmierung verfügbar werden, stellt Silverlight jetzt eine robustere Plattform dar. Damit lassen sich vollständige Applikationen entwickeln. Das ist ein vollkommener Gegensatz zur vorigen Version, bei der Benutzerschnittstellen mit JavaScript und XAML erstellt werden. Version 2.0 folgt einem soliden Programmiermodell. Auf diese Weise können Entwickler neben schicken Benutzerschnittstellen jetzt auch vollwertige Applikationen bereitstellen. Microsoft setzt also ein neues Paradigma für die Programmierung von Applikationen mit Silverlight.

Zwar ist Silverlight eine großartige Plattform für .NET-Entwickler. Doch dürfte es außerhalb dieses Bereichs kaum Anklang finden, insbesondere wegen Adobes etabliertem Flash. Und angesichts des Wechsels zu einem stärker microsoftzentrierten Programmiermodell bleibt abzuwarten, ob Nicht-Microsoft-Entwickler Silverlight für ihre Web-Applikationen verwenden werden.

Haben Sie bereits mit der aktuellen Beta-Version oder der vorigen Version von Silverlight gearbeitet? Haben Sie vor, es in künftigen Projekten zu verwenden? Teilen Sie Ihre Gedanken im Forum[9] mit!

URLs in diesem Artikel:
[1] = http://www.zdnet.de/builder/webdesign/0,39023554,39159522,00.htm
[2] = http://www.zdnet.de/itmanager/whitepapers/0,39026294,60280488p-10000341q,00.htm
[3] = http://silverlight.net/GetStarted/
[4] = http://www.zdnet.de/builder/program/0,39023551,39186639,00.htm
[5] = http://www.zdnet.de/news/software/0,39023144,39136566,00.htm
[6] = http://www.microsoft.com/downloads/details.aspx?FamilyId=B52AEB39-1F10-49A6-85FC-A0A19CAC99AF&displaylang=en
[7] = http://www.microsoft.com/expression/products/Overview.aspx?key=studio
[8] = http://www.oreilly.com/catalog/9780596519988/index.html
[9] = http://cgi.zdnet.de/forum/viewforum.php?f=3&c=2