C# für Ein- und Umsteiger

Microsoft will mit seiner neuen Programmiersprache C# Java Konkurrenz machen und C/C++-Entwicklern den Umstieg erleichtern. Wir zeigen die Neuerungen und die wichtigsten Stolperfallen für Umsteiger.

Bei C# (sprich: "See Sharp") handelt es sich um eine einfache, objektorientierte und typensichere Sprache, die ihre Wurzeln in C und C++ hat. Programmierer, die mit C, C++ oder Java arbeiten, werden nur wenige Probleme haben, sich in der neuen Sprache wohl zu fühlen. Da C# die primäre Programmiersprache für .NET ist und nicht nur für Windows-Client-Anwendungen, sondern auch für Server-Programme und ASP.NET-Webseiten verwendet werden kann, bietet sich die Sprache als neues Werkzeug im Programmierer-Werkzeugkasten um so mehr an.

C# ist leicht zu haben: Man benötigt nicht unbedingt ein MSDN-Abo oder eine Kopie von Visual Studio, um damit zu arbeiten, denn das kostenlose .NET-SDK enthält bereits einen Compiler für diese Sprache. Der hat zwar keine eigene Entwicklungsumgebung und ist damit etwas unhandlich zu bedienen, dafür ist er aber kostenlos.

C# unterstützt das Common Language Subset der CLR von .NET und kann damit als voll ausgewachsene .NET-Programmiersprache verwendet werden. Ob man C# dann nur für Scripts, Server-seitige Webanwendungen, Server-Programme oder einfach für normale Windows-Anwendungen einsetzt, ist dabei egal: C# hat in allen Richtungen etwas zu bieten.

Zusätzlich zur .NET-Klassenbibliothek hat man als Programmierer auch Zugriff auf COM-Objekte, die mit anderen Sprachen entwickelt wurden, und außerdem hat man Zugriff auf ganz normaleWin32 DLLS, wobei Letzteres ein wenig gewöhnungsbedürftig ist.

Ähnlich wie bei C++ wird ein C#-Programm in einer oder mehreren Textdateien abgelegt, die nacheinander übersetzt und schließlich per Linker zu einem fertigen Programm zusammengebunden werden. Anders als bei C++ gibt es aber keinerlei include-Dateien und auch keine Vorwärtsreferenzen. Um Objekte aus der Laufzeitbibliothek zu verwenden, wird das Schlüsselwort using benutzt - Java-Programmierern wird dies bekannt vorkommen.