Sie sind hier: Startseite | Wissen
Begriff CSharp
Abkürzung C#
Eintrag zuletzt aktualisiert am 19.09.2017

 Zur Stichwortliste unseres Lexikons

Was ist CSharp?

C# (gesprochen „C Sharp“) ist eine Weiterentwicklung von C++. Das # könnte man auch in ein vierfaches Pluszeichen aufspalten (also C++++). Konzeptionell ist C# eine Mischung aus Visual C++ 7.0 und Visual Basic .NET. Gewisse Ähnlichkeiten gibt es zu Java. C# ist Ergebnis eines Projekts bei Microsoft, das gestartet wurde, nachdem die Firma Sun Microsoft die Veränderung der von Sun entwickelten Programmiersprache Java verboten hatte. Ursprünglich sollte die Sprache "Cool" heißen. Vater von C# ist Anders Heljsberg, der Erfinder von Turbo Pascal und Borland Delphi.

Im Gegensatz zu C++, die eine hybride Sprache ist, ist C# eine rein objektorientierte Sprache.

An manchen Stellen (z.B. Im Startbildschirm von Visual Studio .NET) wird C# auch mit C#.NET bezeichnet.

Vater der Sprache ist Anders Hejlsberg.
Das C#-Projektteam wurde im Dezember 1998 zusammengesetzt (Anders Hejlsberg am 27.10.2008 in LA).

Standardisierung

C# ist bei der ECMA und der ISO standardisiert
  • ECMA Standard 334, Arbeitsgruppe TC39/TG2)
  • ISO/IEC 23270 ("ISO C#")

Shared Source-Version: Es gibt eine Shared Source-Version der Sprache C# für Windows XP und FreeBSD 4.5, die den kompletten Source-Code für den C#-Compiler enthält. Der C#-Compiler ist in C++ implementiert.

Schnellinfo

Compiler: csc.exe
Verfügbarkeit: als Teil des .NET Framework ab Version 1.0
Preis: kostenlos

Versionen

.NET Framework 1.0 --> C# 1.0 (Compiler-Version 7.0)
.NET Framework 1.1 --> C# 1.1 (Compiler-Version 7.1)
.NET Framework 2.0 --> C# 2.0/C# 2005 (Compiler-Version 8.0)
.NET Framework 3.0 --> C# 2.0/C# 2005 (Compiler-Version 8.0)
.NET Framework 3.5 --> C# 3.0/C# 2008 (Compiler-Version 3.5)
.NET Framework 4.0 --> C# 4.0/C# 2010 (Compiler-Version 4.0)
.NET Framework 4.5 --> C# 5.0/C# 2012 (Compiler-Version 5.0)
.NET Framework 4.6 --> C# 6.0/C# 2015 (Compiler-Version 1.0)
.NET Framework 4.7 --> C# 7.0/C# 2017 (Compiler-Version 2.0)
Update C# 7.1/C# 2017 am 14.8.2017 in Visual Studio 2015 Update 3 (15.3)
Geplante Version: 7.2, 7.3 und 8.0

Hinsichtlich der Versionsnummer existiert einige Verwirrung. Bei C# differiert vor .NET 4.0 die Versionszählung der Sprache von der Versionszählung des Compilers. Bis einschließlich .NET 3.0 zählte Microsoft den C#-Compiler wie den Visual Basic-Compiler. Seit .NET 3.5 zählt Microsoft den C#-Compiler wie das .NET Framework.

Seit der Einführung der neuen Roslyn-Compiler hat Microsoft die Versionszählung wieder mit 1.0 begonnen.

Neuerungen in C# 2.0

  • Generics
  • anonyme Methoden für Delegaten (Code kann mit Hilfe des Schlüsselwortes delegate direkt einem Delegaten zugewiesen werden; er muss nicht mehr in einer separaten unterroutine stehen.
  • partial für partielle Typen (Code einer Klasse kann auf mehrere Dateien aufgeteilt werden. Diese Funktion ist nicht nur für mehr Übersichtlichkeit bei großen Klassen sinnvoll, sondern ermöglicht auch die vereinfachte Realisierung des Code-Behind-Modells).
  • Schlüsselwort yield für die einfachere Entwicklung von Iteratoren in selbstdefinierten Objektmengen

Neuerungen in C# 3.0

siehe Csharp 3.0

Vergleich zu VB.NET

Die Unterschiede zwischen Visual Basic .NET und C# sind eher syntaktischer Natur; hinsichtlich der Möglichkeiten gibt es nur marginale Vorteile für C#. Dies gilt auch für die Performance. Da beide Sprachen MSIL-Code erzeugen, sind große Unterschiede nicht vorhanden.

Weitere Ressoucen auf dieser Website

 Liste der .NET-fähigen Programmiersprachen (Produktreferenz)
 Codebeispiele .NET (C#, Visual Basic und PowerShell)

Beratung & Support:

Schulungen zu diesem Thema:

 C# für Umsteiger von Visual Basic .NET
 C#-Aufbauwissen
 C#-Basiswissen
 .NET und C# für Umsteiger von Java (Migration von Java zu .NET und C#)
 Neuerungen in C# 4.0 (Visual C# 2010)
 Xamarin: .NET-/C#-Cross-Plattform-Entwicklung für iOS (iPhone, iPad) und Android sowie Windows/Windows Phone
 Windows Phone 8 mit C# und XAML / Windows Phone 8 für Softwareentwickler
 .NET-Akademie: .NET 4.6-/C#-Basisseminar: Softwarearchitektur, Techniken, Pattern, Best Practices (2-Tages-Agenda des öffentlichen Seminars)
 Neuerung in der CLR 2.0 und C# 2005
 .NET Akademie: Xamarin: .NET-/C#-Cross-Plattform-Entwicklung für iOS (iPhone, iPad) und Android sowie Windows Phone (3-Tages-Agenda des öffentlichen Seminars)
 Windows-Desktop-Anwendungen: Von den .NET- und C#-Grundlagen zu Windows Forms und Windows Presentation Foundation (WPF)
 Objektorientierte Softwareentwicklung (OOP) mit C#, Java, C++, Visual Basic.NET o.ä.
 .NET Micro Framework - Embedded-Entwicklung mit .NET/C# oder C++
 Grundlagen der objektorientierten Programmierung anhand von C# oder Visual Basic .NET
 Objektorientierte Entwurfsmuster (Design Pattern) mit .NET (C#, Visual Basic .NET, C++/CLI)
 Parallelprogrammierung mit .NET (Multi-Threading/Multi-Tasking) - mit C#/Visual Basic und/oder C++
 Task Parallel Library (TPL) - Parallelprogrammierung/Multi-Threading in .NET mit C# oder Visual Basic
 Visual Studio Tools for Microsoft Office (VSTO) - Microsoft Office-Programmierung mit .NET und C# oder Visual Basic in Visual Studio
 Windows Modern Apps/Windows Universal Apps entwickeln mit der Windows Runtime (WinRT), XAML und .NET/C#/Visual Basic
 Windows 8/Windows 8.1 für Entwickler: Programmierung mit der Windows Runtime (WinRT) - Erstellen von Windows Apps mit C#/XAML und/oder JavaScript/HTML
 Anfrage für eine individuelle Schulung zum Thema Csharp  Gesamter Schulungsthemenkatalog