iX 3/2024
S. 124
Praxis
Softwareentwicklung

Eine Handvoll Neuigkeiten in C# 12.0

C# 12.0 bietet einige syntaktische Veränderungen, allen voran Primärkonstruktoren für Klassen.

Von Dr. Holger Schwichtenberg

C# 12.0 ist zusammen mit Visual Studio 2022 Version 17.8 und .NET 8.0 am 14. November 2023 erschienen. Microsoft gestattet es, die neuen C#-12.0-Sprachfeatures offiziell erst ab .NET 8.0 zu verwenden (siehe C#-Dokumentation unter ix.de/z4m5). 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.

Konstruktoren direkt beim Klassennamen definieren

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:

Kommentieren