Laden...
News Headline: .NET 8 Neuerungen
.NET 8 Neuerungen

Noch ein halbes Jahr bis zum Release von .NET 8 - Zeit sich anzuschauen, was wir neues erwarten dürfen.

LTS Release

.NET 8 ist erneut ein LTS-Release; wie alle geraden Versionsbezeichner. Das bedeutet:

  • Fixes für die Stabilität
  • Grundlegend keine experimentellen Features
  • Längerer Supportzeitraum für Fixes
  • In der Regeln bessere Kompatibilität zu NuGet-Paketen

Entsprechend halten sich die Neuerungen der Runtime in Grenzen. Framework-Bestandteile wie EF Core oder ASP.NET Core erhalten weit mehr Neueres.

Ganz im Zeichen von Native

.NET Native und Native AOT ist seit .NET 7 mit das wichtigste Feature; und zeitgleich unter der Haube das wohl größte und Ressource-bindenste Feature. Durch .NET Native wird es möglich, dass .NET Assemblies (endlich) wirklich nativen Code darstellen - keinen ILCode mehr.

Das bedeutet auch: Assemblies sind deutlich schwerer zu dekompilieren; die Inhalte sind "besser" geschützt - im Endeffekt als ob man C++ programmieren würde. Dies ist ein Feature, das vor allem Enterprise-Unternehmen sich schon sehr lange wünschen: und nun endlich kommt.

Da nativer Code ohne ILCode auskommt heißt das zeitgleich, dass alle Vorteile des JIT-Compilers zur Runtime nicht mehr enthalten sind.

Neue CLI Features

Seit .NET 8 Preview 3 gibt es einen neuen dotnet workload clean Befehl, mit dem der aktuelle Workspace von Überbleibseln aufgeräumt werden kann.

Neues Verzeichnis für Artifakte

Bisher war es für .NET-Entwickler völlig normal, dass es in jedem Projekt bin und obj Ordner gibt. Und genausolang wünschen sich eigentlich Entwickler, dass diese Ordner in einem zusammenfassenden Unterordner abgelegt werden können.

Dies ist nun durch eine aktuell noch optionale Eigenschaft konfigurierbar, die alle Artifakte in einem .artifacts Unterordner zusammen fassen wird; jedoch nicht nur bin/obj, sondern auch Outputs von Publish- bzw. Package-Befehlen.

.artfiacts - Simplified output paths

C# 12

Wie fast alle, zumindest fast alle LTS Versionen gibt es auch diesmal ein erneutes Update der Sprache C#: mit .NET 8 wird C# 12 Einzug halten.

Die wichtigsten Updates von C# 12 sind

Ob alle Features hierbei auch wirklich Teil der Release-Version werden, ist noch nicht final bekannt. Besonders bei den Alias Types hatte man sich erhofft, dass dies "echte Alias" sind wie man sie aus F# kennt (F# Type Abbreviations) - es handelt sich aber nur um using-Aliase.


Wie steht ihr zu .NET 8?
Über welche Features freut ihr euch am meisten, und werdet ihr so schnell wie möglich migrieren?