Strategiewechsel bei Microsoft
Open SourceAgilitätModularisierungCross-PlatformZielgruppenDas mdoerne .NET im Überblick
Die .NET "Core"-StrategieUnterschiede klassisches .NET Framework (CLR) und modernes .NET Core /.NET (Core CLR)Vor- und Nachteile von .NET gegenüber .NET FrameworkPlatformen: Windows, Linux, macOS, iOS, Android, Web/BrowserVerfügbare Versionen von .NET, Aktualisierungszyklen, Semantic VersioningSupport von .NET: Long-Termin-Support vs. Current VersionProgrammiersprachen für .NET (C#, Visual Basic .NET und F# sowie C++/CLI)Verbesserungen in CLR, Just-in-Time-Compiler und Garbage CollectorAusblick auf kommende .NET-VersionenÜberblick über die Anwendungsarten im modernen .NET (Vertiefung nach Wunsch)
Desktop-Anwendungen mit WPF und Windows Forms sowie Windows UI Library 3Webserver-Anwendungen mit ASP.NET CoreSingle-Page-Web-Applications (SPA) mit ASP.NET BlazorWebAPIs mit ASP.NET CoreSystemdienste (Windows Services / systemd)Google RPC-DiensteKonsolenanwendungenNeuerungen in C#
Neuerungen in C# 8.0Neuerungen in C# 9.0Neuerungen in C# 10.0Neuerungen in C# 11.0Neuerungen in C# 12.0Neuerungen in C# 13.0.NET SDK und andere Werkzeuge für das moderne .NET
Das neue Projektformat im modernen .NETWerkzeuge in Visual Studio für das moderne .NETDie neuen KommandozeilenwerkzeugeDOTNET CLI (dotnet.exe)crossgen.exe.NET IL Linker (Trimming/Tree Shaking)Paketverwaltung mit NuGet, Vermeidung der PakethölleNeuerungen in Visual Studio für das moderne .NETHot Reloadingoptional: Visual Studio Code als Alternative zu Visual StudioKlassenbibliotheken im modernen .NET
.NET StandardFunktionen und Klassen aus .NET, die es im modernen .NET nicht mehr gibtNeue Klassen im modernen .NETWindows Compatibility Pack (WCP)Austauschbarkeit von Bibliotheken (Assemblies, DLLs) zwischen .NET, .NET Core und MonoInteroperabilität mit Win32-APIs, COM und WinRTTesten von modernen .NET-Anwendungen
Unterstützte Unit Test-FrameworksTestwerkzeugeDeployment von modernen .NET-Anwendungen
Framework-dependent Deployment (FDD) / Portable Application (PA) Self-contained Deployment (SCD) / Self-contained Application (SCA)Single File PublishAssembly Linker (IL Linker)Ready to Run Images (R2R)Windows Application Packaging (MSIX)Deployment auf lokale SystemeDeployment in die Azure-CloudNavtive AOT-CompilerMigration vom klassischen .NET Framework zum modernen .NET
HerausforderungenMigrationswerkzeuge.NET Portability Analyzer, Try-Convert, .NET Upgrade AssistantAufwand für verschiedene MigrationsszenarienMigrationsleitpfadenMigrationsszenarien
WPF zu WPF CoreWindows Forms zu Windows Forms CoreASP.NET zu ASP.NET CoreEntity Framework zu Entity Framework Core WCF zu CoreWCF WCF zu gRPCAndere Optionen nach AbspracheOptional: Umstellung Ihrer Anwendungen auf das moderne .NET (setzt vorherige Einarbeitung in Ihre Anwendungen voraus)
Windows Forms "Core" im modernen .NET
Unterschiede zwischen Windows Forms auf .NET Framework und auf .NET CoreUmstellung auf das neue ProjektformatMigration an Windows Forms-BeispielenOptional: Umstellung Ihrer Anwendungen auf das moderne .NET (setzt vorherige Einarbeitung in Ihre Anwendungen voraus)