.NET-Implementierungen
Eine .NET-App wird für mindestens eine .NET-Implementierung entwickelt. Implementierungen von .NET sind z. B. das .NET Framework, .NET 5 und höher (sowie .NET Core) und Mono.
Jede Implementierung von .NET umfasst die folgenden Komponenten:
- Mindestens eine Runtime, z. B. die CLR des .NET Framework und von .NET 8
- Eine Klassenbibliothek, z. B. die Basisklassenbibliothek des .NET Framework und die von .NET 8
- Optional mindestens ein Anwendungsframework. ASP.NET, Windows Forms und Windows Presentation Foundation (WPF) sind z. B. im .NET Framework sowie in .NET 5 und höher enthalten.
- Optional Entwicklungstools. Einige Entwicklungstools werden zwischen mehreren Implementierungen freigegeben.
Es gibt vier .NET-Implementierungen, die von Microsoft unterstützt werden:
- .NET 5 und höhere Versionen
- .NET Framework
- Mono
- UWP
.NET, zuvor als .NET Core bezeichnet, ist derzeit die primäre Implementierung. .NET (8) basiert auf einer einzelnen Codebasis, die mehrere Plattformen und viele Workloads unterstützt, z. B. Windows-Desktop-Apps und plattformübergreifende Konsolen-Apps, Cloud-Dienste und Websites. Einige Workloads, z. B. die WebAssembly-Buildtools von .NET, sind als optionale Installationen verfügbar.
.NET 5 und höhere Versionen
.NET und höher (früher .NET Core) ist eine plattformübergreifende .NET-Implementierung, die für die Verarbeitung von Server- und Cloudworkloads im großen Stil konzipiert wurde. Außerdem werden andere Workloads unterstützt, einschließlich Desktop-Apps. Diese Implementierung kann unter Windows, macOS und Linux ausgeführt werden. Damit wird .NET Standard implementiert. Code, der auf .NET Standard ausgerichtet ist, kann also in .NET ausgeführt werden. ASP.NET Core, Windows Forms und Windows Presentation Foundation (WPF) werden in .NET ausgeführt.
.NET 8 ist die neueste Version dieser .NET-Implementierung.
Weitere Informationen finden Sie in den folgenden Ressourcen:
- Einführung in .NET
- .NET im Vergleich zum .NET Framework für Server-Apps
- .NET 5 und höher sowie .NET Standard
.NET Framework
.NET Framework ist die ursprüngliche .NET-Implementierung, die 2002 auf den Markt gebracht wurde. .NET Framework 4.5 und höhere Versionen implementieren .NET Standard. Code, der auf .NET Standard abzielt, kann also in diesen .NET Framework-Versionen ausgeführt werden. .NET Framework enthält zusätzliche Windows-spezifische APIs, wie z.B. APIs für die Windows-Desktopentwicklung mit Windows Forms und WPF. .NET Framework wurde für das Erstellen von Windows-Desktopanwendungen optimiert.
Weitere Informationen finden Sie im Leitfaden zum .NET Framework.
Mono
Bei Mono handelt es sich um eine .NET-Implementierung, die in erster Linie verwendet wird, wenn eine kleine Runtime erforderlich ist. Mono ist die Runtime für Xamarin-Anwendungen unter Android, macOS, iOS, tvOS und watchOS und ist hauptsächlich auf einen geringen Ressourcenbedarf ausgelegt. Mono treibt Spiele an, die mit der Unity-Engine erstellt wurden.
Außerdem unterstützt Mono alle derzeit veröffentlichten Versionen von .NET Standard.
In der Vergangenheit implementierte Mono die größere API des .NET Framework und emulierte einige der beliebtesten Funktionen unter Unix. Manchmal wird es zum Ausführen von .NET-Anwendungen verwendet, die auf diesen Unix-Funktionen basieren.
Mono wird in der Regel mit einem Just-In-Time-Compiler verwendet. Es enthält aber auch einen vollständig statischen Compiler (Ahead-of-time-Kompilierung), der auf Plattformen wie iOS verwendet wird.
Weitere Informationen finden Sie in der Mono-Dokumentation:
Universelle Windows-Plattform (UWP)
Die UWP ist eine Implementierung von .NET, mit der moderne Windows-Anwendungen für Touchscreengeräte und Software für das Internet der Dinge (Internet of Things, IoT) erstellt werden. Sie wurde als einheitliche Plattform entwickelt, um das Programmieren für verschiedene Gerätetypen, von PCs, Tablets und Smartphones bis hin zur Xbox, zu ermöglichen. Die UWP bietet viele Dienste, z.B. einen zentralen App Store, eine Ausführungsumgebung (AppContainer) und mehrere Windows-APIs, die anstelle von Win32 (WinRT) verwendet werden. Apps können in C++, C#, Visual Basic und JavaScript geschrieben werden.
Weitere Informationen finden Sie in der Einführung in die Universelle Windows-Plattform.