Microsoft bringt mit Windows Phone 7 (WP7) eine neue Mobile-Plattform ins Spiel, über die sich Redmond einen Platz im hart umkämpften Smartphone-Markt sichern möchte. Mit der bisherigen Plattform Windows Mobile 6.x hat WP7 nichts mehr gemeinsam. Auch das Design hat Microsoft komplett umgestaltet und beschreitet hier einen neuen, interessanten Weg.
Inhalt statt Glimmer
Das neue Design hört auf den Codenamen "Metro" und hat sich das Motto "Content not Chrome" vorgenommen. Auf der Startseite zeigt sich Windows Phone 7 mit sogenannten Hubs (Kacheln). Sie sammeln Daten aus diversen Quellen und stellen diese übersichtlich dar. So sieht man beispielsweise gleich die neusten Bilder und News von Facebook oder Bilder von Kontakten.
Das Windows Phone 7 kommt vom Design sehr schlicht daher und bietet ein helles und einen dunkles Theme in insgesamt zehn Akzentfarben an. Grundsätzlich kann der Entwickler alle Farbpaletten benutzen, der WP7-Styleguide hält den Entwickler jedoch dazu an, sich an diese Farbschemata zu halten.
Mit Silverlight
Wer bereits mit Silverlight entwickelt hat, wird schnell merken, dass Silverlight for WP7 zahlreiche Beschränkungen mit sich bringt. Es setzt zwar ebenfalls auf XAML-Markup für die grafische Oberfläche, es stehen jedoch für Windows-Phone-7-Applikationen nicht alle Klassen-Bibliotheken zur Verfügung. Beachten Sie zudem, dass nicht sämtliche DLLs auch mit einer Windows Phone 7 Silverlight App funktionieren.
Für Entwickler mit Erfahrung im Bereich der Windows-Presentation-Foundation-Programmierung (WPF) oder mit Silverlight-Hintergrund dürfte der Umstieg auf Windows Phone 7 dennoch sehr leicht fallen. Begriffe wie das Model-View-ViewModel (MVVM) Pattern [4] und Code Behind dürften keine Fremdwörter darstellen. Es ist dennoch hilfreich, wenn ein Grundverständnis für gewisse Verfahren, wie etwa das DataBinding oder für den Aufbau komplexerer Apps, vorhanden ist. Erfahrene Entwickler werden sich freuen, dass WP7 Linq unterstützt, um direkt Abfragen auf Datenspeicher zu ermöglichen.
Grundsätzlich ist es auch möglich, sich ohne grössere WPF-oder Silverlight-Vorkenntnisse an die WP7-Programmierung heranzuwagen. Die Features und APIs lassen sich am besten an einer Beispielapplikation erklären. Zudem werden auch die vielen kleinen Dinge und Tricks erklärt, die eine Applikation ausmachen. Das folgende Beispiel zeigt, wie Sie einen RSS Feed in einem Panaroma-Control laden und die Feeds in einer Detailansicht darstellen. Mit einer kleinen Animation bei der Auswahl der News peppen wir den Reader etwas auf. Den Quellcode der hier gezeigten App finden Sie auf der Smart-Developer-Homepage zum Download [1].
