AoT-Compiler für macOS und bessere Kompilier-Ergebnisse Microsoft stellt .NET 8.0 Preview 1 zur Verfügung

Von Thomas Joos

Mit .NET 8 Preview 1 stellt Microsoft den Ahead-of-Time-Compiler auch für macOS zur Verfügung. Darüber hinaus sind die kompilierten Programme unter Windows und Linux jetzt nur noch halb so groß. Obendrauf kommen weitere neue Funktionen und mehr Leistung.

Installation der .NET 8 Preview in Windows 11 mit Visual Studio 2022.
Installation der .NET 8 Preview in Windows 11 mit Visual Studio 2022.
(Bild: Joos / Microsoft)

Die .NET 8.0 Preview 1 lässt sich kostenlos bei Microsoft herunterladen. Dabei sind die Runtimes für .NET 8, ASP.NET Core und .NET Desktop. Dazu kommt die Sprachunterstützung für C# 11.0, F# 7.0 und Visual Basic 16.9. Die Preview-Version steht für Windows, Linux und macOS zur Verfügung.

.NET 8 mit Visual Studio 2022 nutzen und monatliche Previews nutzen

Zum Einsatz kann .NET 8 unter anderem mit der kostenlosen Community-Edition von Visual Studio 2022 kommen. Die verschiedenen Neuerungen zeigt Microsoft in einem Blog-Beitrag zur .NET 8 Preview 1. Alle Neuerungen finden sich in der Microsoft-Dokumentation zu .NET 8. Microsoft plant, jeden Monat eine neue Preview-Version herauszubringen, und will bis November 2023 die fertige Version von .NET 8 bereitstellen.

Das Debugging für verschiedene Funktionen, zum Beispiel für Blazor WebAssembly, war bisher nur mit Google Chrome möglich. Mit .NET 8 kann auch Mozilla Firefox zum Debugging genutzt werden. Außerdem will Microsoft mit .NET 8 den Download von DLLs über den Browser verbessern. Da Malware-Scanner und Browser DLL-Downloads oft verhindern, hat Microsoft mit WEBCIL ein neues Format geschaffen, das sicherer ist und nicht mehr blockiert wird.

Generell will Microsoft bei Blazor Server und Blazor WebAssembly Verbesserungen integrieren. Dazu sollen die beiden Systeme zu Blazor United miteinander verbunden werden, was eine bessere Zusammenarbeit ermöglicht. Mit Blazor United ermöglicht Entwicklern eine einzige Blazor-basierte Architektur für serverseitiges Rendering und vollständige clientseitige Interaktivität mit Blazor Server oder WebAssembly zu verwenden.

Um .NET 8 in einer Anwendung als Ziel-Framework zu verwenden, muss das SDK für .NET 8 auf dem Rechner installiert sein. Bei der Erstellung von neuen Projekten in Visual Studio 2022 steht .NET 8-Framework zur Verfügung. Bestehende Projekte können zur Verwendung von .NET 8 umgeändert werden. In den Eigenschaften von Projekten kann das Ziel-Framework über folgende Zeile auf .NET 8 gesetzt werden:

<TargetFramework>net8.0</TargetFramework>

Besserer Compiler und verbesserter JSON-Serializer

Die verschiedenen Neuerungen betreffen vor allem den Ahead-of-Time-Compiler, der mit .NET 7 eingeführt wurde. Dieser funktioniert jetzt auch mit macOS und liefert Ergebnisse, die nach dem Kompilieren nur noch halb so groß sind. In den nächsten Preview-Versionen soll der Aot-Compiler weiter verbessert werden. In Zukunft sollen auch ADO.NET, Entity Framework Core und ASP.NET Minimal WebAPIs davon profitieren. AoT-kompilierter Code startet im Vergleich zu JIT-kompiliertem Code schneller, da der JIT-Compiler keinen Zwischencode erzeugen und den Code für die spezifische Hardware- und Softwareumgebung optimieren muss.

Der JSON-Serialzer wurde erweitert und bietet mehr Möglichkeiten. Die Deserialisierung wurde überarbeitet und es gibt neue Namenskonventionen (KebabCaseLower, KebabCaseUpper, SnakeCaseLower und SnakeCaseUpper). Der in ASP.NET Core eingebettete Webserver Kestrel unterstützt in .NET 8 Named Pipes. Außerdem nutzt Kestrel in .NET 8 standardmäßig http/3.

(ID:49217383)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung