Visual C#


In einer Kooperation der beiden Autoren Eller und Kofler entstand der 955 Seiten umfassende Titel „Visual C# – Grundlagen, Programmiertechniken, Windows-Programmierung“, der in der Addison-Wesley „Programmers Choice“ Reihe erschienen und seit Anfang August im Handel ist. Getrieben durch den Wunsch Eslers, ein umfassendes Buch zu C# zu verfassen, konnte in gemeinschaftlicher Arbeit das erfolgreiche Konzept von Koflers VB.NET Buch übernommen werden, um ein eigenständiges Werk zur Sprache C# zu schaffen. Als eines der ersten Bücher überhaupt basiert der Titel hierbei auf der aktuellen Version 1.1 des .NET Frameworks.
Inhaltlich bietet das Buch seinem Titel entsprechend in 20 Kapiteln, aufgeteilt in vier Teile, in einem umfassenden Rundumschlag sowohl einen Überblick über die Sprache selbst, als auch über die Klassen des .NET Frameworks. Der erste Teil vermittelt dem Leser interessantes Hintergrundwissen zu .NET, erklärt anhand des bekannten „Hello World“ Beispiels die ersten Grundlagen der Sprache C# sowie der Entwicklungsumgebung Visual C#, und schliesst mit den wichtigsten Informationen zur Entwicklungsumgebung sowie deren frei verfügbarer Alternative SharpDevelop. Zwei Tools zum Decompilieren und schützen des sog. Intermediate Language Codes werden ebenfalls besprochen. Der zweite Teil des Buches beschäftigt sich mit den Grundlagen der Sprache C# und bringt dem Leser hier die grundlegenden Sprachkonzepte wie Datentypen und Ablaufsteuerung nahe. Da es sich bei C# um eine streng objektorientierte Programmiersprache handelt, wird weiterhin ausführlich die objektorientierte Programmierung mit Klassen und Schnittstellen und den zugehörigen Konzepten wie Namespaces, Vererbung und Polymorphie behandelt. Der dritte Teil widmet sich grundlegenden Programmiertechniken in C#. Angefangen bei der Arbeit mit Datentypen (Arithmetik, Konvertierung, Formatierung von primitiven Datentypen sowie Datum und Zeit) und Containerklassen (den sog. Collections) setzt sich der Inhalt bei Datei- und Verzeichniszugriff (inkl. fortgeschrittener Konzepte wie Serialisierung), Multithreading sowie Fehlersuche und Fehlerabsicherung (sog. Exception-Handling) fort. Der vierte und letzte Teil behandelt ausführlich die Programmierung von Windows-Anwendungen mit C#. Nach einer allgemeinen Einführung in den Namespace Windows.Forms werden zunächst die Standard-Steuerelemente und Anordnungsmöglichkeiten besprochen, bevor der Leser im nächsten Kapitel erfährt, wie er eigene Steuerelemente erstellen kann. Von einzelnen Steuerelementen geht es dann zu ganzen Benutzeroberflächen inkl. Elementen wie Menüs, Symbolleisten oder Statusleisten. Standarddialoge werden ebenso behandelt wie MDI-Anwendungen. Der vierte Teil setzt sich mit Kapiteln zur Grafikprogrammierung mit dem GDI-Nachfolger GDI+ sowie Druckerausgabe fort und endet schließlich mit Kapiteln zu weiterführenden Programmiertechniken wie Lokalisierung oder API-Aufrufen, und einem Kapitel zur Weitergabe von Programmen mithilfe eines sog. Setup-Projekts von Visual Studio.
Dem Buch liegt eine Begleit-CD bei, auf der die im Buch meistens nur auszugartig abgedruckten Quelltexte als vollständige Projekte jeweils für .NET 1.0 und 1.1 (d.h. Visual Studio 2002 und 2003) vorliegen. Ebenfalls auf der CD enthalten ist das .NET Framework in Version 1.0 und 1.1 als Retail- und SDK-Version, eine umfangreiche Link-Sammlung inkl. aller im Buch genannten Links, sowie die Entwicklungsumgebung SharpDevelop und ein Hexeditor.
Wer bereits den VB.NET Titel von Kofler kennt, wird sich in diesem Buch schnell zurecht finden, und viele bekannte Beispiele entdecken, die einfach von VB.NET zu C# umgeschrieben wurden. Das umfangreiche Beispielarchiv auf der beiliegenden CD ist zweifellos einer der großen Pluspunkte für das Buch, umso mehr, da sie sowohl für die .NET Version 1.0 als auch für Version 1.1 vorliegen. Als äußerst hilfreich erweist sich auch die Tatsache, dass die Inhalte der einzelnen Kapitel am Kapitelende in kompakten Tabellen zusammengefasst sind – auch wenn ich mir diese Tabellen lieber als kleines Beiheft gewünscht hätte. Angenehm fällt auch auf, dass oftmals aufgezeigt wird, wie das .NET Framework mehrere Möglichkeiten für eine Aufgabe bereitstellt.
In einem Fachbuch, das sich einzig mit der Programmiersprache beschäftigt, fällt jedoch ein Verweis auf die Onlinehilfe, weil man ein Thema „so gut wie nie braucht“ (Operatorenüberladung) negativ ins Auge. Eingefleischte C++ Programmierer müssen außerdem einige Seitenhiebe auf ihre „komplizierte“ Programmiersprache hinnehmen. Außerdem muss der Leser einige sprachliche wie inhaltliche Fehler inkauf nehmen. Dass umfangreiche Themen wie der Datenbankzugriff über ADO.NET nicht angesprochen werden, ist zu verschmerzen, ist doch der Umfang der Themen geeignet für ein eigenes Buch.
Als Zielgruppe lassen sich Leser mit vorhandener Programmiererfahrung ausmachen. Das Buch erklärt zwar die Sprachkonzepte von Grund auf, jedoch steigt der Schwierigkeitsgrad rasch an. Wer hier vorhandenes Wissen aus anderen Programmiersprachen übertragen kann, findet sehr einfach den Zugang zu C#.
Trotz einiger Fehler bietet das Buch einen gelungenen Ein- oder Umstieg in die Sprache C#, sowie einen guten Überblick über die wichtigsten Klassen im .NET Framework. Durch die Zusammenfassungen am Ende eines jeden Kapitels eignet sich das Buch ebenfalls hervorragend als Nachschlagewerk. Ergänzend für die Arbeit mit .NET ist das Buch „Programmierung mit der .NET-Klassenbibliothek. Zugriff auf das Windows-Betriebssystem mit Visual Basic .NET und C#“ von Holger Schwichtenberg und Frank Eller zu empfehlen, ebenfalls im Addison-Wesley Verlag erschienen.
Homepages der Autoren mit Inhaltsverzeichnis, Leseproben und Errata:
http://www.frankeller.de/
http://www.kofler.cc
Frank Eller, Michael Kofler, „Visual C# – Grundlagen, Programmiertechniken, Windows-Programmierung“;
Addison-Wesley 2003;
ISBN 3-8273-2073-9
Matthias Gall, November 2003

Leave a Reply

Your email address will not be published. Required fields are marked *