🏠 » Tutorials » C# Tutorial » Einführung in C#

Einführung in die Programmiersprache C#

C#, gesprochen „C Sharp“, ist eine objektorientierte Programmiersprache, deren Entwicklung von Microsoft in Auftrag gegeben wurde. Der Hauptarchitekt der Sprache ist Anders Hejlsberg.

Seit der Erstveröffentlichung der Version 1.0 erfreut sich C# einer enormen Beliebtheit, die in den nächsten Jahren nicht abzuebben droht. Die Einsatzgebiete sind vielfältig und umfassen klassische Desktop-Anwendungen, Webbasierte Anwendungen und auch Applikationen für Mobiltelefone.

Die Programmiersprache C# gilt als einfach, modern und universell. Entwickler nutzen hauptsächlich Microsoft Visual Studio als Entwicklungsumgebung, da diese speziell für die Verwendung von .NET konzipiert wurde und ein mächtiges Tool für die Entwicklung von Anwendungen für das Windows Betriebssystem darstellt.

Entwicklung der Programmiersprache C#

Die Grundidee bei der Entwicklung der Programmiersprache C# war es, die Schwächen von C bzw. C++ zu verbessern. Aus diesem Grund ist die grundsätzliche Struktur der Syntax von C++ übernommen worden, viele problematische Konstrukte wurden dabei jedoch verworfen.

Die erste Version von C# erschien im Jahre 2001, war jedoch noch längst nicht ausgereift. Über die Jahre hinweg kamen, in Rücksicht auf die Wünsche der Entwickler, immer wieder neue Features wie z.B. die Language Integrated Query (LINQ) hinzu.

Eigenschaften von C# im Überblick

Die Besonderheit von C#, im Gegensatz zu Programmiersprachen wie C und C++, ist die Plattformunabhängigkeit. Sie erlaubt die identische Ausführung des Codes unabhängig vom verwendeten Computer und dessen Hardware.

Diese Plattformunabhängigkeit wird jedoch nur dann erreicht, wenn das Microsoft-Framework .NET installiert und verwendet wird. Innerhalb diesen Frameworks existiert das Konzept des sogenannten Managed Code. Nachdem der Entwickler seinen C#-Code geschrieben hat, übersetzt ein Compiler diesen in einen Code einer Art Zwischensprache, der Microsoft Intermediate Language (MSIL). Der Entwickler erhält daraus bereits eine ausführbare Datei, die jedoch nicht mit anderen .exe-Dateien zu vergleichen ist.

Startet er im Anschluss das Programm, übersetzt ein Just-In-Time-Compiler (JIT-Compiler) das Programm in den für den individuellen Computer spezifischen Code. Das bedeutet, dass das Programm erst mit der Ausführung final übersetzt wird. Für die Verwendung einer solchen .exe-Datei ist das .NET-Laufzeitumgebung zwingend erforderlich, da hier der spezielle JIT-Compiler enthalten ist. Der Compiler ist sehr schnell und bietet dem Entwickler einige Annehmlichkeiten, wie zum Beispiel eine automatische Speicherverwaltung.

Das Gegenstück zum managed Code ist der unmanaged bzw. native Code, wie er von Programmiersprachen wie C++ bekannt ist. Das erlaubt eine klassische Übersetzung ganz ohne Zwischensprache und .NET-Framework. Anwendungen dieser Art sind zwar etwas schneller, jedoch nicht mehr plattformunabhängig.

Vorteile und Nachteile von C#

Vorteile von C#

  • plattformunabhängig bei Verwendung von .NET
  • sehr gefragt in Wirtschaft und Wissenschaft
  • .NET bietet ein umfangreiches Repertoire an Bibliotheken und Klassen, sodass bereits erfundene Programmierkonstrukte nicht neu geschrieben werden müssen
  • Sprachneutralität durch .NET erlaubt es, in C# programmierte Programmteile mit Teilen zu kombinieren, die in anderen Programmiersprachen entwickelt wurden
  • modern und leistungsfähig

Nachteile von C#

  • Plattformunabhängigkeit gilt nicht für UNIX-basierte Systeme wie Linux und Mac OS, da .NET für diese Systeme nicht in vollem Umfang verfügbar ist
  • geringfügig langsamer als plattformabhängige Anwendungen
  • nicht hardwarenah
  • da Microsoft Visual Studio das am geeignetsten Entwicklertool für C# ist, ist die professionelle Entwicklung in dieser Sprache recht teuer (Anschaffungskosten der Software)
  • wenig Auswahl an leistungsstarken und kostengünstigen Entwicklungsumgebungen

Weiterführende Artikel

Bitte bewerten (1 - 5):