24.11.2022
Microsoft
Neues in C# 11, Überblick und Beispiele
Autor: Bernhard Lauer



Microsoft.com
Mads Torgersen, C#-Chef-Designer in Microsofts .NET Team hat einen Appetizer zu den Neuerungen in C# 11 zusammengestellt, inklusive Beispielen.
Zusammen mit .NET 7 ist im November auch eine neue Version von C# erschienen, die mittlerweile elfte Auflage der effektivsten und beliebtesten .NET-Programmiersprache. Als die interessantesten Neuerungen stellt Mads Torgersen, C#-Chef-Designer in Microsofts .NET Team auf dieser Seite die folgenden Features vor:
UTF-8-String-Literale: Um den Aufwand und den Performance-Overhead der Konvertierung von UTF-16 nach UTF-8 zu minimieren, können Entwickler jetzt einfach ein u8-Suffix an ihre String-Literale anhängen, um sie sofort in UTF-8 zu erhalten, sprich: Sie werden erst gar nicht in UTF-16 aufgebaut.
Raw-String-Literale: Sie beheben den Nachteil, dass C#-String-Literale oft Steuerzeichen enthalten. Raw String-Literale enthalten überhaupt keine Escape-Zeichen, alles ist Inhalt.
Abstrahieren über statische Member: Bisher konnte man schlecht über von Natur aus statische Operationen abstrahieren. In C# 11 gibt es nun die Unterstützung für statische virtuelle Member in Schnittstellen (war als Vorschau in C# 10). Damit lässt sich jetzt eine einfache mathematische Schnittstelle definieren.
List Patterns: Der Musterabgleich wurde in C# 7 eingeführt und hat sich seither zu einer wichtigen und leistungsfähigen Kontrollstruktur entwickelt. Mit List Patterns lassen sich Muster rekursiv auf die einzelnen Elemente einer listenartigen Eingabe anwenden - oder auf einen Ausschnitt daraus.
Required members: Beim Erstellen von Typen, die Objektinitialisierer verwenden, konnte man bisher nicht angeben, dass einige Eigenschaften initialisiert werden müssen. Jetzt lässt sich bestimmen, dass eine Eigenschaft oder ein Feld erforderlich ist, was bedeutet, dass sie/es durch einen Objektinitialisierer initialisiert werden muss.
Beispiele für die genannten Neuerungen finden Sie auf dieser Seite. Die komplette Whats-New-Liste sowie die Liste der Breaking Changes zu C# 11 pflegt Microsoft hier.
Messaging
Whatsapp-Sprachnachrichten erhalten Verschwinde-Funktion
Viele Messenger-Chats quellen über: Nicht alles, was man austauscht, muss dort überdauern. Deshalb führt Whatsapp eine neue Option für belanglose, unüberlegte oder heikle Sprachnachrichten ein.
>>
CodeProject
Sprachvorschlag "Smallscript"
Der Entwickler Łukasz Bownik hat einen Vorschlag für eine neue Skriptsprache, nämlich das von Smalltalk inspirierte Smallscript, ausgearbeitet.
>>
Teradata
Vorschau von Teradata AI Unlimited auf AWS verfügbar
Die serverlose Engine für künstliche Intelligenz und maschinelles Lernen in der Cloud ist ab sofort in einer privaten Vorschau über den AWS Marketplace verfügbar.
>>
Trends in der KI
„KI soll uns ergänzen, nicht ersetzen“
Ein Jahr ChatGPT für alle: Was bedeutet die KI für die Zukunft von Entwicklern und Entscheidungsträgern? Matt Asay, Vizepräsident für Developer Relations, und Tara Hernandez, Vizepräsidentin für Developer Productivity (beide MongoDB) geben eine Antwort darauf.
>>