EMZETT.
Login

Kurz: C# erschien 2002 als Teil von .NET und wird von Anders Hejlsberg (auch Vater von Turbo Pascal und TypeScript) entworfen. Heute ist es quelloffen und plattformübergreifend.

Teil des Kurses C#

Kapitel 1 von 16 im Kurs C# (Abschnitt „Einstieg“). Mit Fortschritt, Quiz und Zertifikat auf der Lernseite.

C# erschien 2002 als Teil von .NET und wird von Anders Hejlsberg (auch Vater von Turbo Pascal und TypeScript) entworfen. Heute ist es quelloffen und plattformübergreifend.

C# und .NET

BegriffBedeutung
C#die Programmiersprache
.NETLaufzeit (CLR) und Klassenbibliothek; führt den Code aus
.NET SDKCompiler + Werkzeuge (dotnet) zum Entwickeln
NuGetPaketverwaltung (wie npm/pip)
ASP.NET CoreFramework für Webanwendungen und APIs
MAUI, WPF, WinFormsOberflächen für Handy und Desktop
UnitySpiele-Engine mit C# als Skriptsprache

C#-Code wird zu IL (Zwischencode) übersetzt, den die Laufzeit per JIT in Maschinencode verwandelt. Ähnlich wie bei Java, aber mit modernen Sprachfunktionen. Mit Native AOT lassen sich auch eigenständige native Programme erzeugen.

Eigenschaften

  • Statisch typisiert und objektorientiert, mit funktionalen Elementen
  • Garbage Collector verwaltet den Speicher
  • Null-Sicherheit: Der Compiler warnt vor möglichen null-Zugriffen
  • LINQ: Datenabfragen direkt in der Sprache
  • async/await: einfache asynchrone Programmierung
  • Jährlich ein neues Release im November (C# 12 mit .NET 8 LTS, C# 13 mit .NET 9, …)

Installieren und starten

dotnet --version                  # Version prüfen
dotnet new console -o hallo       # neues Projekt
cd hallo
dotnet run                        # übersetzen und ausführen

Entwicklungsumgebungen: Visual Studio (Windows/Mac), VS Code mit C# Dev Kit, JetBrains Rider.

Dein erstes Programm

Program.cs

Console.WriteLine("Hallo, Welt!");

Ausgabe:

Hallo, Welt!

Seit C# 9 genügen Top-Level-Anweisungen: Der Code steht direkt in der Datei, kein Main und keine Klasse nötig. Das klassische Gerüst sieht so aus und tut dasselbe:

namespace Hallo;
 
class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("Hallo, Welt!");
    }
}

Ausgabe:

Hallo, Welt!

Merke

  • C# ist die Sprache, .NET die Plattform; das SDK enthält Compiler und Werkzeuge
  • dotnet new console, dotnet run sind die wichtigsten Befehle
  • Top-Level-Anweisungen machen kleine Programme kurz
  • C# ist statisch typisiert, mit Garbage Collector, LINQ und async/await
  • Unity, ASP.NET Core und Windows-Anwendungen sind die Hauptanwendungen

Quiz zur Selbstkontrolle

Weiter im Kurs

Weiter: Variablen, Typen und Ausgabe

Alle Kapitel: C# im Überblick