Web-Entwicklung

Silverlight 2 schlägt die Brücke zum Rich-Client

29.07.2008
Von 


Wolfgang Miedl arbeitet Autor und Berater mit Schwerpunkt IT und Business. Daneben publiziert er auf der Website Sharepoint360.de regelmäßig rund um Microsoft SharePoint, Office und Social Collaboration.
Microsofts "Silverlight" verspricht eine Verschmelzung von Web- und Rich-Client. Während einige Unternehmen bereits mit Version 1 arbeiten, steht derzeit das zweite Beta-Release von Version 2 mit vollwertigem .NET zur Verfügung.
Gruppenfoto auf Microsofts TechEd 2008 mit Bill Gates in der Mitte.
Gruppenfoto auf Microsofts TechEd 2008 mit Bill Gates in der Mitte.
Foto: Microsoft

In seiner letzten Rede als Microsoft-Chairman am 3. Juni auf der TechEd-Konferenz setzte Bill Gates noch einmal Akzente. Unter anderem rückte der Microsoft-Gründer Silverlight 2 mit der neuen Beta-Version 2 in den Vordergrund seiner Präsentation. Schon mit der prominenten Platzierung des Tools unterstreichen die Redmonder die Bedeutung: Silverlight steht für eine neue Client-Strategie, die die Kluft zwischen dem bisher dominierenden, klassischen Windows-Client und der neuen Welt der Web-Anwendungen überbrücken soll. Vereinfacht gesagt wandert bei Silverlight die Windows-Umgebung in den Browser. Wie bei Adobes Flash benötigen Anwender auch bei Silverlight ein separates Browser-Plug-in, um in der Welt der neuen Anwendungen mitmachen zu können. Offenheit und Plattformunabhängigkeit werden dabei laut Microsoft großgeschrieben, was mit der aktuellen Liste der von Silverlight unterstützten Browser und Betriebssysteme unterstrichen wird: Zu finden sind darauf derzeit Linux, Mac OS, Firefox und Safari.

Silverlight 2 markiert gegenüber der Version 1 einen deutlichen Entwicklungssprung. Mit dem nun enthaltenen .NET-Framework verwandelt es den Browser in einen Vista-ähnlichen Rich-Client. Microsoft zielt mit dieser Strategie vor allem auf seine große Windows-Entwicklergemeinde, der man nun ein einheitliches Programmiermodell für Web- und Rich-Client bis hin zu den Server-Technologien vorlegt. Auch komplettiert Microsoft damit einen zentralen Baustein seiner "Software + Services Strategie" (S+S). Diese setzt sich vom reinen Utility-Modell des Software-as-a-Service (SaaS) ab und propagiert stattdessen eine Kombination aus klassischer Client-Software, lokal betriebenen Server-Anwendungen und Internet-Diensten.

Neues in Silverlight 2

Wichtig für Entwickler ist zunächst die "Go-Live"-Lizenz von Silverlight 2, die trotz des Teststatus den Aufbau kommerzieller Applikationen erlaubt. Das Update enthält nun im Unterschied zum Vorgänger eine Variante des .NET-Frameworks inklusive der Common Language Runtime (CLR) als Laufzeitumgebung. Genau genommen bildet Silverlight 2 eine Untermenge der mit Vista/.NET 3.0 eingeführten Windows-Frontend-Technologie Windows Presentation Foundation (WPF). Beschränkt wurde beispielsweise aus Sicherheitsgründen der Zugriff von Web-Anwendungen auf das Client-Dateisystem. Entwickler profitieren von dieser Vereinheitlichung, weil sie nun in allen Bereichen .NET-Sprachen wie C# oder VB.NET verwenden können. Zudem erweitert die integrierte Dynamic Language Runtime (DLR) diesen Horizont noch um trendige Skriptsprachen wie IronPython oder IronRuby.

Auch bei der Gestaltung von Programmoberflächen bringt Silverlight 2 viel Neues - etwa mit über 30 zusätzlichen Bedien- und Anzeigeelemente wie Eingabefelder, Tabellenraster (Data Grid), Schaltknöpfe oder Dateidialoge. Diese vorgefertigten Komponenten stehen dem Entwickler als Baukasten zur Verfügung und erleichtern die Programmierung. Der integrierte "Visual State Manager" unterstützt die Trennung von Code und Benutzeroberfläche und fördert damit die Arbeitsteilung zwischen (nichttechnischen) Designern und Entwicklern.

Verbessert wurde auch die Kompatibilität mit WPF, so dass Entwickler bei der Arbeit mit Rich- und Web-Client-Anwendungen Programmkomponenten besser austauschen und wiederverwenden können. Läuft alles wie geplant, sind die Redmonder ihrem vor einigen Jahren erklärten Ziel einer Verschmelzung von Web- und Rich-Client-Entwicklung damit schon recht nahe gekommen.