Experimentierkoffer

Für ein professionelles Entwicklerwerkzeug kann man locker mehrere tausend Euro ausgeben. Viele der dort eingebauten Komponenten sind aber für den Hobbyisten Overkill. Wer auf sie verzichtet, bekommt die Kernfunktionen in Profi-Qualität sogar schon zum Nulltarif.

In Pocket speichern vorlesen Druckansicht 157 Kommentare lesen
Lesezeit: 11 Min.
Von
  • Hajo Schulz
Inhaltsverzeichnis

Wenn davon die Rede ist, der PC sei ein ideales Vehikel für kreative Hobbys, denken die meisten wohl zunächst an Bildbearbeitung, Videoschnitt, Musikkomposition und Ähnliches. Dabei gibt es noch eine andere Beschäftigung mit dem Rechner, die durchaus schöpferische, zum Teil gar künstlerische Züge trägt. Gemeint ist das Programmieren.

Bei all diesen Betätigungen steht und fällt der Spaß an der Freude mit der Qualität der zur Verfügung stehenden Werkzeuge. Bedienbare Anwendungen, deren Ergebnisse auch kritischen Blicken standhalten, sind häufig sehr teuer. Programmierer haben es da besser: Ausstattungsmerkmale wie Team-Funktionen oder die Integration in ein Anforderungsmanagement sind im Hobbybereich ohne Schmerzen verzichtbar. Gefragt sind hier vor allem ein komfortabler Editor, ein schneller Compiler und ein Debugger, der bei der Fehlersuche wirklich hilft. Integrierte Entwicklungsumgebungen (IDEs), die sich auf diese Kernkompetenzen beschränken, gibt es ohne Abstriche bei der Qualität sogar schon kostenlos.

Vier ziemlich ansehnliche Vertreter haben wir auf der DVD in diesem Heft für Sie versammelt: die Express-Ausgaben von Microsofts Visual Studio 2008. Die vier Geschmacksrichtungen unterscheiden sich nach verwendeter Programmiersprache und Einsatzzweck. Da wären zunächst einmal Visual Basic 2008 Express und Visual C# 2008 Express. Beide sind reinrassige .NET-Entwicklungsumgebungen zum Programmieren von Windows-Anwendungen. Welche der beiden Sprachen man einsetzt, ist weitgehend Geschmackssache: Der Funktionsumfang ist bis auf Kleinigkeiten bei beiden identisch, was man schon daran sieht, dass es Werkzeuge gibt, die in der einen Sprache geschriebene Programme in die jeweils andere übersetzen können. Wer vielleicht schon mal Kontakt mit Java oder C++ hatte, wird wohl eher zu C# tendieren, für VB6- und Pascal-Veteranen liegt der Griff zu Visual Basic näher. Das allen mit diesen IDEs entwickelten Anwendungen zugrunde liegende .NET Framework ist weitgehend in C# geschrieben, und Programmbeispiele im Internet findet man auch eher in dieser Sprache. Für Visual Basic mag die My-Klasse sprechen, die beim Umgang mit Rechnerressourcen wie Laufwerken, der Zwischenablage oder der Ereignisanzeige einiges an Tipparbeit spart.

Auch mit Visual C++ 2008 Express lassen sich .NET-basierte Windows-Anwendungen programmieren. Allerdings muss man dabei auf einige Segnungen der aktuellen .NET-Version 3.5 verzichten – dazu gleich mehr. Dafür ist C++ die einzige Sprache, mit der man direkt ans Win32-API herankommt und so hoch optimierte, kompakte Programme nach alter Väter Sitte erstellen kann. Als erste zu lernende Programmiersprache ist C++ allerdings ziemlich hartes Brot.

Die vierte Visual-Studio-Inkarnation hört auf den etwas sperrigen Namen Visual Web Developer 2008 Express und ist zum Programmieren von Webanwendungen gedacht. Bei der Programmiersprache kann man zwischen C# und Visual Basic wählen, innerhalb eines Projekts muss man dann aber bei der einmal gewählten Sprache bleiben.

Eine ausführliche Beschreibung, wie Sie mit dem Web Developer und der Sprache Visual Basic Ihre erste eigene Webanwendung erstellen, lesen Sie ab Seite 132 in diesem Heft. Wer sich in C# einarbeiten möchte, findet Lektüre dazu auf unserer Heft-DVD: Das eBook Visual C# 2008 – Das umfassende Handbuch lässt sich einfach auf die Festplatte entpacken und durch Öffnen der Datei index.htm in jedem beliebigen Web-Browser lesen.

C# ist auch die Sprache der Wahl, wenn Sie sich einmal als Spieleprogrammierer betätigen möchten: Auf der DVD gibt es dazu das XNA Game Studio 3.0 CTP. Dahinter steckt einerseits eine umfangreiche Bibliothek mit Klassen und Funktionen, die dem Entwickler das Grundgerüst eines DirectX-Spiels bereitstellen und die Ausgabe von 2D- und 3D-Grafik sowie Sound erleichtern, und zum anderen eine Sammlung von Werkzeugen, die sich zum Teil in Visual C# integrieren und den Umgang mit diesen Medien vereinfachen. Den Weg zum ersten eigenen XNA-Spiel beschreibt der Artikel ab Seite 126 in diesem Heft.

2,5 GByte freien Speicherplatz auf der Festplatte, 512, unter Vista besser 1024 MByte RAM und eine einigermaßen schnelle CPU vorausgesetzt – ab 2 GHz macht’s Spaß –, ist die Installation des Visual Studio kein großes Problem: Alle Voraussetzungen wie eine aktuelle Version des .NET Framework bringt das Setup selbst mit. Die Auswahl der mitzuinstallierenden Komponenten beschränkt sich auf wenige Punkte: Hinter der MSDN Library verbirgt sich die Dokumentation samt einführenden Tutorials und ausführlichen Referenzinformationen. Das alles gibt es zwar auch online, aber Microsofts Server liefert manchmal recht träge. Um trotz lokaler Installation stets den aktuellen Stand der Dokumentation zu Gesicht zu bekommen, kann man beim ersten Aufruf der Hilfe oder später über den Menüpunkt Extras/Optionen des Document Explorer unter Hilfe/Online festlegen, dass Inhalte zunächst auf der Festplatte und dann im Internet gesucht werden sollen.

Den SQL Server 2005 Express braucht, wer Anwendungen entwickeln will, die auf eben diese Datenbank zugreifen sollen. Sie muss dazu nicht unbedingt auf demselben Rechner laufen wie die Entwicklungsumgebung, sondern lässt sich auch übers Netzwerk ansprechen. Ein gesondertes Installationsprogramm für die Datenbank findet sich in allen vier Visual-Studio-Paketen im Unterordner WCU\SSE. Für kleinere Anwendungsfälle und wenn es nicht auf Mehrbenutzerfähigkeit der Datenbank ankommt, braucht man übrigens keinen ausgewachsenen Datenbankserver: In Visual Basic und Visual C# ist der SQL Server Compact 3.5 enthalten, eine kleine, lokale, dateibasierte Datenbank, die aber von der Ansteuerung her kompatibel zum großen Bruder ist und Daten mit ihm synchronisieren kann.

Alle vier Varianten des Visual Studio Express lassen sich problemlos nebeneinander auf einem Rechner installieren, wobei die MSDN-Bibliothek und der SQL Server höchstens einmal auf der Platte landen. Das Mischen von Programmiersprachen innerhalb eines Projekts bleibt allerdings den kostenpflichtigen Ausgaben des Visual Studio vorbehalten. Gegenüber der etwa 350 Euro teuren Standardausgabe ist das neben einigen fehlenden Projektvorlagen auch so ziemlich die einzige Einschränkung der Express-Ausgaben. Einen Vergleich der unterschiedlichen Ausstattungsvarianten finden Sie unter [1].

Selbst lizenzrechtlich ist die Express-Version nicht eingeschränkt: Alles, was Sie damit entwickeln, dürfen Sie ohne Weiteres auch kommerziell nutzen. Die Registrierung bei Microsoft, um die jede der Express-Varianten ab dem zweiten Start bittet, ist freiwillig: Unabhängig davon, ob Sie sie durchführen oder nicht, erscheint der Hinweis genau dreimal und dann nie wieder. Später nachholen können Sie die Registrierung über den Menübefehl „Hilfe/Produkt registrieren“ der IDE und bekommen als Belohnung eine E-Mail mit einer Adresse, unter der Sie sich einige Goodies herunterladen können. Zum Bonusmaterial gehören unter anderem kostenlose Sammlungen von Fotos und Icons zum Verzieren Ihrer Kreationen oder eine Komponente, mit deren Hilfe Sie Anwendungen um ein Ribbon im Stil von Office 2007 erweitern können.

Der erste Start nach der Installation des Visual Studio verläuft recht zäh, weil es zunächst einmal unter heftiger Festplattenaktivität seine Siebensachen zusammensucht und einen Index für die Dokumentation erstellt. Aber keine Angst: Ab dem zweiten Start geht es deutlich zügiger zu Werke.

Visual Studio 2008 Express appelliert ganz bewusst an Menschen, die sich noch nie mit dem Programmieren beschäftigt haben. Auf der Startseite gibt es dazu einen Kasten „Erste Schritte“ mit einer Handvoll Links in die Dokumentation und ins Web, hinter denen einige recht nett gemachte Tutorials stecken.

Vor allem an ein jüngeres Publikum richtet sich die Webseite Coding4Fun [2]. Dort stellt Microsoft Starterkits für ein Webseiten-Projekt, ein kleines Weltraumspiel und eine Ameisensimulation (Achtung: Suchtgefahr!) bereit, die als Ausgangspunkte für eigene Experimente mit der Entwicklungsumgebung dienen können.

Aber auch wer schon mit der 2005er-Ausgabe des Visual Studio Erfahrungen gesammelt hat, dürfte an der Neuauflage seine Freude haben: Das beginnt damit, dass die IDE die mit den Versionen 3.0 und 3.5 neu ins .NET Framework aufgenommenen Funktionen beherrscht. So gibt es bei Visual Basic und C# einen Oberflächendesigner für WPF-Anwendungen (Windows Presentation Foundation). Beide Sprachen haben zudem mit LINQ (Language Integrated Query) eine komfortable Abfragesprache für den Zugriff auf beliebige Datensammlungen hinzugewonnen. Der Web Developer kann besser als sein Vorgänger mit Cascaded Stylesheets (CSS) umgehen, kennt etliche neue ASP.NET-Steuerelemente und beherrscht die Entwicklung von AJAX-Oberflächen – inklusive IntelliSense und clientseitigem Debugger für JavaScript.

Etwas schlechter ist Visual C++ bei den Neuerungen weggekommen. Erwähnenswert ist vielleicht, dass es nun eine .NET-Implementierung der Standardbibliothek STL gibt. Nach wie vor fehlen der Express-Ausgabe aber die Microsoft Foundation Classes (MFC) – für GUI-Anwendungen muss man also entweder auf Windows Forms und damit .NET zurückgreifen oder sich direkt mit dem Win32-API herumschlagen.

Wer das noch nicht auswendig gelernt hat, kommt über kurz oder lang nicht umhin, sich ein aktuelles Windows SDK zu installieren, denn die Win32-API-Dokumentation fehlt in der MSDN Express Library. Aktuell ist derzeit das „Windows SDK for Windows Server 2008 and .NET 3.5, Version 6.1“ (siehe Soft-Link). Wer es nach Visual C++ 2008 installiert, braucht weiter nichts zu beachten. Wenn Sie es jedoch schon zuvor auf dem Rechner hatten oder nachträglich zwischen dem SDK 6.1 und dem im Visual Studio 2008 enthaltenen SDK 6.0A umschalten wollen, lauert eine Falle: Das „Windows SDK Configuration Tool“ aus dem Startmenü erzeugt im GUI-Modus unter Umständen eine inkonsistente Konfiguration. Starten Sie es besser aus einer „Visual Studio 2008-Eingabeaufforderung“ heraus, indem Sie zunächst ins SDK-Verzeichnis wechseln (normalerweise „%ProgramFiles%\Microsoft SDKs\Windows\v6.1\Setup“) und ihm dort mit

windowssdkver -version:v6.1 

beziehungsweise

windowssdkver -version:v6.0A 

direkt mitteilen, welche SDK-Version Sie benutzen wollen.

Um die API-Referenz in die Visual-Studio-Dokumentation zu integrieren, müssen Sie anschließend Visual C++ einmal mit Administratorrechten starten, die Hilfe aufrufen und in der Adresszeile des Document Explorer die URL „ms-help://MS.VSCC.v90/dv_vscccommon/local/collectionmanager.htm“ eingeben. Setzen Sie unten auf der angezeigten Seite das Häkchen vor „Microsoft Windows SDK“ und bestätigen Sie mit „VSCC aktualisieren“. Nach dem Schließen des Document Explorer und Visual Studio nebst anschließendem Neustart derselben wird die Dokumentation neu indiziert, was eine Weile dauern kann.

Nach diesen Einstellungen haben Programmierer, die möglichst dicht am System arbeiten und echten Maschinencode schreiben wollen, mit Visual C++ Express ein Werkzeug, das auch gehobenen Ansprüchen gerecht wird. Wem das für den Anfang ein bisschen zu hart ist, der begibt sich besser mit Visual Basic oder C# in die .NET-Welt, in der Typsicherheit und eine automatische Speicherverwaltung vor allzu groben Schnitzern schützen. Oder nehmen Sie den Visual Web Developer, designen Sie ohne lange Einarbeitung in HTML ansprechende Webseiten und füllen sie nach und nach mit dynamischen Funktionen. Wie auch immer Sie Ihren Einstieg in die Programmiererei angehen: Spaß macht sie auf jeden Fall.

[1] Visual Studio 2008-Produktvergleich

[2] Coding4Fun

Soft-Link

"Software-Kollektion"
Artikel zum Thema "Software-Kollektion" finden Sie in der c't 17/2008:
Visual Studio 2008 Express S. 122
Spieleprogrammierung mit XNA S. 126
Web-Anwendungen gestalten und programmieren S. 132
Software für Mathematik und Naturwissenschaften S. 138

(hos)