C#-Update: Version 12.0 punktet mit Primärkonstruktoren für Klassen

C# 12.0 bietet einige Veränderungen. Mengen darf man nun wie in JavaScript mit eckigen Klammern initialisieren. Wir geben eine Übersicht.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht 6 Kommentare lesen
Lesezeit: 11 Min.
Von
  • Dr. Holger Schwichtenberg
Inhaltsverzeichnis

C# 12.0 ist zusammen mit Visual Studio 2022 Version 17.8 und .NET 8.0 am 14.11.2023 erschienen. Microsoft gestattet es, die neuen C#-12.0-Sprachfeatures offiziell erst ab .NET 8.0 zu verwenden. Entwicklerinnen und Entwickler können aber die meisten (allerdings nicht alle) C#-12.0-Sprachfeatures auch in älteren .NET-Versionen einschließlich .NET Framework, .NET Core und Xamarin nutzen. Dazu müssen sie die <LangVersion> in der Projektdatei (.csproj) auf 12.0 erhöhen.

Mehr zum Thema Softwareentwicklung
Dr. Holger Schwichtenberg

Dr. Holger Schwichtenberg ist Chief Technology Expert bei der MAXIMAGO-Softwareentwicklung. Mit dem Expertenteam bei www.IT-Visions.de bietet er zudem Beratung und Schulungen im Umfeld von Microsoft-, Java- und Webtechniken an. Er hält Vorträge auf Fachkonferenzen und ist Autor zahlreicher Fachbücher.

Die bedeutendste Neuerung in C# 12.0 sind Primärkonstruktoren für Klassen. Dieses Sprachfeature war bereits im Jahr 2014 als Prototyp für C# 6.0 verfügbar, ist dann aber nicht im endgültigen Produkt erschienen. Nun – sechs C#-Versionen weiter – kommt Microsoft in C# 12.0 darauf zurück, auch vor dem Hintergrund der Record-Typen, die es seit C# 9.0 mit Primärkonstruktoren gibt:

public record Person(int ID, string Name, string Website = "");

Ein Primärkonstruktor ist eine Parameterliste direkt hinter dem Typnamen. In C# 12.0 ist das auch für Klassendefinitionen möglich.