Modellwechsel mit Komfortgewinn

Visual Studio 2008 bietet kaum revolutionäre Neuerungen, dafür aber viele kleine Verbesserungen im Detail.

Artikel erschienen in Swiss IT Magazine 2007/19

     

Autofahrer, die einer Marke treu bleiben, freuen sich beim Umstieg auf das neueste Modell meistens über Kleinigkeiten und dass alles beim Alten geblieben ist. Auch Entwickler denken in der Regel eher konservativ und fürchten nichts mehr, als wenn ihre IDE modischen Trends folgt, mit Features überladen wird oder Assistenten versuchen, ihnen das Denken abzunehmen. Bei Visual Studio ist zum Glück nichts Derartiges der Fall. Die Entwickler in Redmond wissen um die Sensibilität ihrer Aufgabe, ein Werkzeug schaffen zu müssen, das Profis das Gefühl gibt, alles machen zu können, und gleichzeitig die stetig nachwachsenden «Neulinge» nicht gleich am Anfang zu überfordern.



Würde man in Redmond noch das alte Nummernschema bevorzugen, wäre Visual Studio 2008 (VS 2008) eine typische Punkt-1-Version. Es gibt zahlreiche kleine Verbesserungen, aber nichts in der Grössenordnung, das einen Sprung um eine ganze Ziffer rechtfertigen würde (intern liegt bereits die Version 9.0 vor). Doch die moderaten Änderungen sind kein Zeichen für mangelnde Innovationsfähigkeit, sondern sie versprechen einen nahtlosen Übergang ohne den durch das Suchen nach vertrauten Funktionen oft bedingten «Produktivitätsausfall». Im Idealfall wird die neue Version installiert (auch parallel zu Visual Studio 2005), die alten Projekte werden beim ersten Öffnen (wie üblich) konvertiert, und anschliessend steht eine aktuellere Version der für die meisten Entwickler inzwischen überaus vertrauten IDE zur Verfügung, die einfach ein wenig mehr zu bieten hat.






Die wichtigsten Neuerungen auf einen Blick


Sanfte Erneuerung

Der erste Eindruck ist, dass sich optisch nicht allzu viel verändert hat. Das wird auch durch den zweiten Eindruck bestätigt: Die Neuerungen verteilen sich über die gesamte IDE und bestehen in erster Linie aus kleinen, aber nicht unwichtigen Details.

Die Tabelle stellt die wichtigsten Neuerungen zusammen. Eines dieser nicht ganz unwichtigen Details ist der Umstand, dass in den Projekteigenschaften die Versionsnummer der
.NET-Laufzeit ausgewählt werden kann, gegen die das Projekt kompiliert wird (zur Auswahl stehen 2.0, 3.0 und 3.5 – 1.1 wird nicht mehr unterstützt, da nur noch eine kleine Minderheit für diese Version entwickeln dürfte). Die Auswahl entscheidet nicht nur, welche Assembly-Bibliotheken eingebunden werden, sondern auch, welche Verweise gesetzt werden. Speziell für VB-Entwickler gibt es die Möglichkeit, Erweiterungen des My-Namespaces in den Projekteigenschaften einzubinden.


Lange erwartet, ein Designer für WPF

Die Windows Presentation Foundation (WPF), die neue «Grafikschnittstelle», bei der Vektorgrafik, Animationen und eine hervorragende Darstellung von Text im Mittelpunkt stehen, gibt es bereits seit November 2006. Mit VS 2008 gibt es endlich auch ein Werkzeug, mit dem Entwickler WPF-Oberflächen auf der Basis von XAML, wie bei den WinForms gewohnt, umsetzen können. Sehr praktisch ist die dreigeteilte Ansicht und eine Zoom-Funktion für WPF-Container, die es bei Expression Blend, dem WPF-Werkzeug für Designer, nicht gibt. Allzu viel erwarten darf man von dem Designer jedoch nicht. Geht es
um das Zusammenstellen von typischen Benutzeroberflächen, bietet er den gewohnten Komfort.



Möchte man jedoch mehr machen und zum Beispiel Triggers, Styles oder Animationen hinzufügen, geschieht dies auch bei VS 2008 ausschliesslich direkt im XAML-Code (es ist unwahrscheinlich, dass die finale Version im Unterschied zur Beta 2 noch signifikante Verbesserungen enthalten wird). Dies ist zwar alles andere als eine Zumutung, da für einen erfahrenen WPF-Entwickler das Eintippen des XAML-Codes in der Regel schneller von der Hand gehen dürfte als die Benutzung eines Designers. Trotzdem limitiert es die Möglichkeiten und signalisiert indirekt, dass WPF noch nicht den Stellenwert bei Microsoft hat, den es haben sollte.




Die WinForms werden nach Aussage von Microsoft nur noch in kleinen Details verbessert, die Zukunft lautet WPF. Damit Entwickler nicht vor eine Entweder-oder-Entscheidung gestellt werden, bietet die Toolbox Komponenten an, mit denen sich sowohl WinForms-Elemente auf einem WPF-Container und umgekehrt anordnen lassen.


Mehr Komfort für Daten

Neuerung Nummer 1 beim Thema Datenzugriff ist natürlich die Unterstützung für das neue Language Integrated Query Framework (LINQ), das Teil des .NET Framework 3.5 ist. Da LINQ Gegenstand eines ausführlichen Artikels in der nächsten Ausgabe sein wird, an dieser Stelle nur so viel: Dank LINQ lassen sich beliebige Datenquellen in einer an SQL angelehnten Abfragesprache direkt im Quellcode abfragen. Dank LINQ to SQL lassen sich speziell Microsoft-SQL-Server-Datenbanken (und nur diese) über eine Objektschnittstelle abfragen und aktualisieren, was der Grundfunktionalität eines typischen O/R-Mappers entspricht. Bei VS 2008 macht sich LINQ lediglich durch die neue LINQ-to-SQL-Classes-Vorlage bemerkbar, über die sich ein Layer für eine SQL-Server-Datenbank zusammenstellen lässt, der per Code und LINQ «objektorientiert» angesprochen wird. Die Umsetzung könnte einfacher nicht sein. Als erstes werden die Tabellen auf den Designer gezogen, anschliessend lässt sich folgender Code schreiben:



Dim DB As New DataClasses1DataContext



Dim Emps As System.Data.Linq.Table(Of Employee) = DB.Employees

Dim SeattleEmp = From Emp In Emps Where Emp.City = “Seattle” Select Emp



Es ist allerdings nicht so, dass man in Redmond für die Datenschicht in Zukunft nur noch auf LINQ setzt, im Gegenteil. Auch der mit VS 2005 eingeführte Ansatz über ein typisiertes DataSet wird weiterverfolgt und wurde bei VS 2008 um ein wichtiges Element erweitert. Der stets automatisch generierte Code für ein DataSet kann in ein eigenes Projekt ausgelagert werden, so dass eine sauberere Trennung resultiert.


Bei dem Trubel um LINQ kann schnell übersehen werden, dass VS 2008 eine neue Datenbank-Engine einführt. Es ist die SQL Server 2005 Compact Edition, die zwar in erster Linie für den Einsatz auf mobilen Geräten vorgesehen ist, die aber genauso unter XP oder Vista läuft und als dateibasierter «SQL Server» viele Vorzüge für Entwickler besitzt, die an einer kleinen und trotzdem vertraut wirkenden Daten-Engine interessiert sind. Ergänzt wird er durch die Möglichkeit, eine lokale Datenbank mit einer mobilen Variante der Datenbank synchronisieren zu können (Stichwort: Synchronization Services for ADO.NET). Attraktiv ist auch das Lizenzmodell: Die neue Engine ist kostenlos und kann kostenlos weitergegeben werden.


Mehr Komfort für Office-Entwickler

Die Visual Studio Tools für Office (VSTO) waren lange Zeit mehr dafür bekannt, den längsten Produktnamen in der Palette der Microsoft-Produkte zu besitzen, als tatsächlich eingesetzt zu werden. Das lag auch daran, dass bis zur Version 2.0 immer etwas Entscheidendes gefehlt hat. Mit der aktuellen Version 3.0 sind die VSTO endlich komplett. Unterstützt werden nun die Neuerungen von Office 2007, die Multifunktionsleisten und Regionen bei Outlook-2007-Formularen, für die neu auch Designer zur Verfügung stehen. Ausserdem werden bei den Add-ins jetzt die Versionen 2003 und 2007 gleichermassen unterstützt.



Die sicherlich wichtigste Neuerung ist, dass die in der Vergangenheit aufgrund der stets erforderlichen Berechtigungen recht aufwendige Auslieferung einer VSTO-Anwendung dank ClickOnce deutlich einfacher geworden ist. Unternehmen oder Abteilungen, die noch viel VBA-Code im Einsatz haben, werden befriedigt zur Kenntnis nehmen, dass sich in einer VSTO-Anwendung VBA-Code aufrufen lässt und umgekehrt
.NET-Methoden für den Aufruf in VBA-Code gekennzeichnet werden können.

Die Anbindung an ein ERP oder CRM, für das es nur .NET-Schnittstellen gibt, lässt sich damit sehr viel einfacher in eine bestehende VBA-Anwendung integrieren. Erwähnenswert sind ferner zwei Vorlagen für SharePoint-Workflows, mit denen sich Dokument-Workflows für die Windows SharePoint Services 3.0 und den grossen Office SharePoint Server 2007 erstellen lassen. Alle Baustellen in diesem Bereich konnte man in Redmond nicht schliessen, denn das im Vergleich zu den bereits bei .NET 3.0 enthaltenen Package-Klassen deutlich komfortablere Open XML SDK liegt immer noch als Preview vor und wird kein offizieller Teil der .NET-Klassen­bibliothek 3.5.


Mehr Komfort fürs Web

Visual Studio ist auch ein erstklassiges Web-Entwicklerwerkzeug, das sich vermutlich hinter etablierten Werkzeugen wie Dreamweaver nicht zu verstecken braucht. Die zwei wichtigsten Neuerungen runden die Werkzeugpalette sinnvoll ab. Einerseits wurde ASP.NET AJAX in die IDE integriert, so dass es von Anfang an zur Verfügung steht. Andererseits gibt es für JavaScript, HTML und CSS ein umfassendes Intellisense, so dass zum Beispiel nach der Eingabe von JavaScript-Objekten Auswahllisten angeboten werden.


Entwickeln für Vista

Ein wichtiger Aspekt ist natürlich die Vista-Unterstützung. Diese beschränkt sich bei VS 2008 auf eine Einstellung in den Projektoptionen, mit der die für die Ausführung unter der Benutzerkontensteuerung von Vista erforderliche Manifestdatei automatisch angelegt wird. Spezielle Vista-UI-Komponenten sucht man in der Toolbox dagegen vergeblich. Wenn Microsoft von Vista-Anwendungen spricht, meint man meistens WPF-Anwendungen, die genauso unter XP laufen.


Hawaii am Horizont

Vorlagen für Silverlight werden nicht Teil von VS 2008 sein, da Silverlight 1.1 immer noch als Preview vorliegt. Sie werden im Rahmen eines «Refresh» vermutlich im Sommer 2008 nachgereicht werden. Nach dem Motto: «Es gibt immer eine nächste Version» (für das es aber auch bei Microsoft Ausnahmen gibt, siehe FoxPro) wird es eines schönen Tages auch einen Nachfolger von VS 2008 geben, an dem (unter dem vielversprechenden Codenamen «Hawaii») zurzeit sicher schon gearbeitet wird.

Vor 2012 dürfte dieser Nachfolger aber nicht offiziell werden. In einigen Blogs aus dem Jahre 2005 liest man noch Andeutungen darüber, dass es mit dieser Version ein komplett neues UI geben könnte (damals noch in Anspielung auf das bevorstehende Longhorn-Release). Dass Microsoft den Entwicklern einen solch radikalen Schnitt zumuten wird, ist eher unwahrscheinlich. Der Fortschritt findet bei Visual Studio in kleinen Schritten statt.




Artikel kommentieren
Kommentare werden vor der Freischaltung durch die Redaktion geprüft.

Anti-Spam-Frage: Welche Farbe hatte Rotkäppchens Kappe?
GOLD SPONSOREN
SPONSOREN & PARTNER