www.wikidata.de-de.nina.az
NET bis 2020 NET Core ist eine freie und quelloffene Software Plattform innerhalb des NET Systems die zur Entwicklung und Ausfuhrung von Anwendungsprogrammen dient und unter der Koordination von Microsoft entwickelt wird NETBasisdatenEntwickler MicrosoftErscheinungsjahr 2016Aktuelle Version 8 0 0 1 14 November 2023 Betriebssystem Linux macOS WindowsProgrammiersprache vorwiegend C Lizenz MITdotnet microsoft com NET Core wurde mehrere Jahre als Modernisierungsprojekt von zentralen Komponenten des NET Frameworks parallel zu diesem entwickelt und bildet jetzt als NET den Nachfolger des bisherigen monolithischen NET Frameworks Klassenbibliotheken konnen kompatibel zum bisherigen NET Framework entwickelt werden indem als Zielframework NET Standard 2 0 verwendet wird Inhaltsverzeichnis 1 Geschichte 2 Unterstutzte Betriebssysteme und Architekturen 3 AOT und JIT Kompilierung 3 1 Einschrankungen 4 Entwicklung 4 1 Entwicklungsumgebungen 4 2 Programmiersprachen 4 3 Bereitstellung 5 Anwendungsgebiete 6 Bestandteile 7 Literatur 8 Weblinks 9 EinzelnachweiseGeschichte BearbeitenVersionsgeschichte Version Datum1 0 RC 1 18 Nov 20151 0 RC 2 16 Mai 20161 0 27 Juni 2016 2 1 0 16 EoL 3 14 Mai 20191 1 17 Nov 20161 1 13 EoL 3 14 Mai 20192 0 14 Aug 20172 0 9 EoL 3 10 Juli 20182 1 30 Mai 20182 1 30 EoL 3 19 Aug 2021 4 2 2 4 Dez 20182 2 8 EoL 3 19 Nov 2019 5 3 0 23 Sep 20193 0 3 EoL 18 Feb 20203 1 3 Dez 20193 1 32 EoL 6 13 Dez 20225 0 17 EoL 7 10 Mai 20226 0 8 Nov 20216 0 25 8 14 Nov 20237 0 14 9 14 Nov 20238 0 10 14 Nov 2023 NET Core wurde erstmals im Mai 2014 angekundigt und zwar unter dem Namen Cloud optimized NET Framework Es folgten die Alpha und Beta Variante bis im November 2015 der erste Release Candidate erschien womit Anwendungen fur den Produktivbetrieb entwickelt werden durfen Dieser Release Candidate erhielt den Namen NET Core 5 wobei die 5 die Fortsetzung der Versionsnummerierung des NET Frameworks bedeutet 11 Im Januar 2016 wurde von Seiten Microsofts allerdings angekundigt diese Nummerierung dahingehend zu andern dass NET Core in seiner ersten Version beginnend mit 1 nummeriert wird 12 Am 27 Juni 2016 wurde die Version 1 0 veroffentlicht 2 Die erste offizielle Version der Softwareentwicklungswerkzeuge erschien am 7 Marz 2017 Am 14 August 2017 erschien die Version 2 0 mit umfangreichen Erganzungen der APIs zur Angleichung an das bisherige NET Framework bzw den festgelegten NET Standard 2 0 Die am 30 Mai 2018 erschienene Version 2 1 enthielt Unterstutzung fur weitere Architekturen zusatzliche Anweisungen im SDK und Performance Verbesserungen 13 14 Diese Version wurde auch zur LTS Version erklart die dann bis zum 21 August 2021 unterstutzt wurde 15 Am 23 September 2019 erschien die Version 3 0 mit umfangreichen Verbesserungen wie der Verwendung der neuen C Version 8 0 F 4 7 der Unterstutzung von Desktop Oberflachen in Form von Zusatzpaketen und Performance Verbesserungen und AOT Kompilierung 16 Zusatzliche Moglichkeiten gab es auch beim auf NET Core 3 basierenden ASP NET Core wie das neue Server Side Blazor Framework und die Unterstutzung von gRPC 17 18 Verbesserungen gab es auch beim Entity Framework Core 19 Die Version 3 1 war als LTS Version konzipiert und enthielt eine Reihe von Fehlerbehebungen und Verbesserungen insbesondere bei Windows Desktop und dem neuen Blazor Framework Neu war die Unterstutzung von C CLI nur unter Windows 20 Im November 2020 wurde dann NET 5 als Nachfolger zu NET Core und nur eingeschrankt kompatibel zu NET 4 8 freigegeben Bestimmte API Lucken gegenuber dem klassischen NET werden nur durch Windows spezifische Zusatzpakete geschlossen z B Microsoft Windows Compatibility Das betrifft auch die im September 2019 im Rahmen der NET Core Version 3 0 freigegebenen grafischen Benutzeroberflachen Windows Forms und WPF 21 22 Seit Dezember 2020 werden die Updates auf Windows fur NET 5 und NET Core als Microsoft Updates unter bestimmten Voraussetzungen automatisch ausgeliefert 23 Im November 2021 wurde NET 6 freigegeben mit Performanceverbesserungen und neuen Sprachfeatures in C 10 und F 6 24 25 Mit Hilfe der neuen Hot Reload Funktion sind Anderungen an einer laufenden Anwendung unter bestimmten Voraussetzungen moglich beispielsweise beim Debuggen mit Visual Studio 2022 Beim Arbeiten mit der Kommandozeile steht diese Funktion durch Start mithilfe von dotnet watch zur Verfugung 26 27 28 Im Mai 2022 wurde die NET Multi Platform App UI MAUI eingefuhrt die es ermoglicht grafische Anwendungen mit einer einheitlichen Codebasis fur verschiedene Plattformen derzeit Windows Android iOS und macOS zu entwickeln 29 30 31 Im November 2022 erschien die Version 7 mit zahlreichen Leistungsverbesserungen 32 vollstandiger AOT Kompilierung und neuen Funktionen in C 11 F 7 NET MAUI ASP NET Core Blazor Web APIs WinForms WPF 33 Im November 2023 wurde die Version 8 freigegeben und enthalt umfangreiche Neuerungen im Webframework Blazor Erweiterungen und neuen Funktionen u a in C 12 F 8 WPF NET MAUI und dem Entity Framework Core 34 35 Unterstutzte Betriebssysteme und Architekturen BearbeitenDas Software Development Kit wird auf folgenden Architekturen unterstutzt Windows ab Version 7 fur IA 32 x64 und Arm mit 32 Bit macOS ab 10 12 und verschiedene Linux Distributionen fur x64 sowie ARM letztere mit 32 und 64 Bit Unterstutzung 36 37 Auch fur Docker und Snappy gibt es offizielle Images 38 39 AOT und JIT Kompilierung BearbeitenBis NET Core 3 0 erzeugte der NET Compiler Programmdateien in denen Common Intermediate Language durch die Common Language Runtime auf der Zielplattform in Maschinencode ubersetzt werden musste Das Just In Time Compiling erfordert die zusatzliche und ineffiziente Verteilung von Laufzeitbibliotheken fur die Zielplattform Eine neu eingefuhrte Ahead Of Time Kompilierung in NET Core 3 0 hat den IL Code der Anwendung fur die Zielplattform vorkompiliert die entstehenden Programmdateien die ReadyToRun Images genannt werden sollten schneller starten da die Common Language Runtime den Code vor der Ausfuhrung nicht mehr ubersetzen musste Die AOT Kompilierung stand zunachst nur fur CLI Software zur Verfugung 40 Als solche werden Cronjobs und Hintergrunddienste geschrieben die auf Servern ohne Desktop Oberflache zum Beispiel in Cloud Umgebungen stand alone betrieben werden und die auf eine moglichst kurze Initialisierungszeit angewiesen sind NET 7 unterstutzte als erste Version der NET Plattform das vollstandige native Ahead Of Time Compiling AOT fur Windows und Linux wodurch Software die mit NET geschrieben wurde nicht langer auf eine Laufzeitbibliothek und einen Just In Time Compiler JIT angewiesen ist und auf den Zielplattformen ohne zusatzlich einzubindende Softwarepakete ausgefuhrt werden kann 41 Damit kehrten die NET Plattformentwickler zum ursprunglichen Konzept der Anwendungsentwicklung zuruck bei dem Software vom Hersteller gezielt fur bestimmte Plattformen veroffentlicht werden kann Vorher entwickelte sich die NET Konzeption hin zur Idee eines auf allen Plattformen lauffahigen universellen Programmpaketes UWP welches mit einem JIT Compiler des Zulieferers Microsoft auf der Zielplattform ausgefuhrt wird Mit NET sind nach wie vor beide Verbreitungswege moglich da mit einem UWP Paket Software im Microsoft Store fur verschiedene Windows Systeme meist als Desktop Software vertrieben wird wahrend mit Ahead Of Time Compiling durch eine zielgerichtet erzeugte kleinere Programmdatei die Verteilung fur verschiedene Betriebssysteme meist als Hintergrundprozess ohne Benutzeroberflache erleichtert und die Performance der Software weiter verbessert werden soll Einschrankungen Bearbeiten Ahead Of Time Compiling hat gegenuber dem herkommlichen Verbreitungsweg einige Einschrankungen Der Hersteller listet auf dass mit Native AOT Applikationen kein dynamisches Nachladen von Programmcode wie Assembly LoadFile moglich ist kein Laufzeitcode generiert werden kann der beispielsweise durch Reflexion entsteht die Verwendung von C CLI grundsatzlich ausgeschlossen ist COM nicht eingebaut ist Trimming die automatische Anpassung und Integration von verwendeten NET Abhangigkeiten in die Programmdatei erforderlich ist wodurch Einschrankungen entstehen die Auslieferung in nur einer einzigen Programmdatei impliziert wird wodurch Inkompatibilitaten entstehen notwendige Laufzeitbibliotheken eingeschlossen sind welche die Programmdatei selbst vergrossern LINQ Ausdrucke ausschliesslich interpretiert werden und nicht alle Laufzeitbibliotheken kompatibel sind und einige Warnungsmeldungen die entstehen durch Entwickler nicht behoben werden konnen Entwicklung BearbeitenEntwicklungsumgebungen Bearbeiten In diesem Artikel oder Abschnitt fehlen noch folgende wichtige Informationen Chronologie fehlt Welche IDE fur welche NET bzw NET Core Versionen VS MonoDevleop Filzstift Diskussion 13 04 24 Nov 2023 CET Hilf der Wikipedia indem du sie recherchierst und einfugst NET Anwendungen lassen sich mit folgenden Entwicklungsumgebungen entwickeln Visual Studio 2022 Windows 42 Visual Studio 2022 for Mac macOS 43 Visual Studio Code Windows Linux macOS per Kommandozeile mit dem NET SDK JetBrains Rider Windows Linux macOS 44 Programmiersprachen Bearbeiten Als Programmiersprachen fur NET werden C F und VB auf allen oben genannten Betriebssystemen unterstutzt unter Windows zusatzlich noch C CLI 45 46 47 Ahnlich wie beim klassischem NET Framework sind weitere Sprachen implementierbar So entwickelt Iolevel eine tschechische Firma mit dem PeachPie Compiler einen PHP Compiler fur NET sowie eine dazu passende Visual Studio Erweiterung Im Marz 2021 wurde die Version 1 freigegeben 48 49 50 Bereitstellung Bearbeiten NET kennt verschiedene Arten der Veroffentlichung und Bereitstellung Die framework abhangigen Methoden setzten die Installation einer passenden Version des Laufzeitsystems auf dem Zielrechner voraus Bei der eigenstandigen Bereitstellung werden die benotigten Teile des Laufzeitsystems gemeinsam mit der Anwendung in einem Verzeichnis bereitgestellt passend fur Betriebssystem und Architektur des Zielrechners 51 Es existieren offiziell von Microsoft unterstutzte Docker Images fur das Entwickler SDK sowie die Laufzeitumgebungen 38 Man kann seine NET Anwendung daher vergleichsweise einfach plattformubergreifend in Containern betreiben Auch eine Veroffentlichung des erstellten Images ist moglich Das SDK Image ist hierbei fur die Kompilierung notwendig wahrend die daraus erstellten DLL Dateien lediglich die schlankere Laufzeitumgebung benotigen Anwendungsgebiete Bearbeiten NET selbst ist ohne Zusatzpakete fur Konsolenanwendungen und ASP NET Core automatisch integriertes Zusatzpaket verwendbar 52 Durch Zusatzpakete die auch von Drittanbietern stammen konnen und in einer sehr grossen Anzahl auf nuget org verfugbar sind 53 lasst sich die Basis Funktionalitat des Frameworks erheblich erweitern Einsatzgebiete bei denen NET einen zentralen Bestandteil darstellt sind beispielsweise Universal Windows Platform UWP Klassenbibliotheken fur den NET Standard 54 Cross Plattformentwicklung mit GTK 55 plattformunabhangige Benutzeroberflachen mit Avalonia UI 56 ab Version 3 Windows Desktop Oberflachen mit WPF WinForms oder UWP PHP Entwicklung mit PeachPieDie allermeisten Einsatzszenarien bei denen das fruhere NET Framework verwendet wurde konnen auch mit NET ggf erganzt um Zusatzpakete realisiert werden Fur einige der gekundigten Techniken gibt es Losungen als Community Projekt z B fur WCF das Projekt CoreWCF 57 58 59 Bestandteile BearbeitenDie wichtigsten Komponenten von NET sind 60 die Laufzeitumgebung mit den Klassenbibliotheken die Laufzeitumgebung und Klassen fur ASP NET Core seit Core Version 3 0 fester Bestandteil das NET Core bzw das NET SDKIst das SDK installiert so konnen zahlreiche Aufgaben der Softwareentwicklung mit dem Kommando dotnet erledigt werden z B dotnet build also englisch fur das Ubersetzen der Anwendung 61 Literatur BearbeitenLehrbucher Christian Nagel Professional C 7 and NET Core 2 0 John Wiley amp Sons 2018 ISBN 978 1 119 44927 0 Mark J Price C 8 0 and NET Core 3 0 Packt Publishing 2019 ISBN 978 1 78847 812 0 Weblinks Bearbeiten NET auf der Webprasenz von Microsoft Microsoft Update Katalog NET Core Tutorials bei docs microsoft com Einfuhrung in NET bei docs microsoft com NET Core Dokumentation bei docs microsoft com NET Repository bei GitHubEinzelnachweise Bearbeiten dotnet microsoft com abgerufen am 14 November 2023 a b NET Core Microsofts plattformunabhangiges Entwicklungs Framework erreicht Version 1 0 Heise 27 Juni 2016 a b c d e Download NET Core Microsoft zuletzt geandert am 24 Juli 2019 englisch NET Core official support policy Abgerufen am 15 Mai 2020 englisch Download NET Core 2 2 Linux macOS and Windows Abgerufen am 23 September 2022 amerikanisches Englisch Download NET Core 3 1 Abgerufen am 14 Dezember 2022 englisch Download NET 5 0 Abgerufen am 15 Juni 2022 englisch Download NET 6 0 In microsoft com Abgerufen am 14 November 2023 englisch Download NET 7 0 Abgerufen am 14 November 2023 englisch Download NET 8 0 Abgerufen am 14 November 2023 englisch Holger Schwichtenberg connect NET Core 5 und ASP NET 5 erreichen Go Live Status In Heise 18 November 2015 Alexander Neumann NET Core 1 0 und ASP NET Core 1 0 Versionswechsel impliziert Neuanfang Heise 20 Januar 2016 dotnet core Abgerufen am 31 Mai 2018 englisch Performance Improvements in NET Core 2 1 microsoft com abgerufen am 31 Mai 2018 NET Support Policy Abgerufen am 14 Dezember 2018 englisch Performance Improvements in NET Core 3 0 15 Mai 2019 abgerufen am 12 Oktober 2019 amerikanisches Englisch ASP NET Blog ASP NET Core and Blazor updates in NET Core 3 0 23 September 2019 abgerufen am 12 Oktober 2019 amerikanisches Englisch ASP NET Blog gRPC vs HTTP APIs 18 November 2019 abgerufen am 28 November 2019 amerikanisches Englisch Announcing Entity Framework Core 3 0 and Entity Framework 6 3 General Availability 23 September 2019 abgerufen am 12 Oktober 2019 amerikanisches Englisch Home repository for NET Core Contribute to dotnet core development by creating an account on GitHub NET Platform 3 Dezember 2019 abgerufen am 3 Dezember 2019 Holger Schwichtenberg Build 2018 Microsoft kundigt Windows Desktopprogrammierung fur NET Core 3 0 an Heise online 8 Mai 2018 Rich Lander Announcing NET Core 3 Preview 1 and Open Sourcing Windows Desktop Frameworks In DevBlogs Microsoft 4 Dezember 2018 abgerufen am 24 April 2020 amerikanisches Englisch NET Core 2 1 3 1 and NET 5 0 updates are coming to Microsoft Update 3 Dezember 2020 abgerufen am 8 Dezember 2020 amerikanisches Englisch gewarren What s new in NET 6 Abgerufen am 8 November 2021 amerikanisches Englisch Announcing NET 6 The Fastest NET Yet 8 November 2021 abgerufen am 8 November 2021 amerikanisches Englisch Introducing the NET Hot Reload experience for editing code at runtime 25 Mai 2021 abgerufen am 24 November 2021 amerikanisches Englisch Update on NET Hot Reload progress and Visual Studio 2022 Highlights 20 Oktober 2021 abgerufen am 24 November 2021 amerikanisches Englisch tdykstra dotnet watch command NET CLI Abgerufen am 2 Dezember 2022 amerikanisches Englisch Introducing NET MAUI One Codebase Many Platforms 23 Mai 2022 abgerufen am 24 Mai 2022 amerikanisches Englisch heise online NET MAUI Microsofts neue GUI Bibliothek fur Windows Android iOS und macOS Abgerufen am 24 Mai 2022 NET Multi platform App UI NET MAUI NET Abgerufen am 24 Mai 2022 amerikanisches Englisch Stephen Toub MSFT Performance Improvements in NET 7 31 August 2022 abgerufen am 10 November 2022 amerikanisches Englisch Jon Douglas NET 7 is Available Today 8 November 2022 abgerufen am 8 November 2022 amerikanisches Englisch Gaurav Seth Announcing NET 8 14 November 2023 abgerufen am 14 November 2023 amerikanisches Englisch heise online NET 8 0 und C 12 0 erscheinen heute Viel Neues fur Blazor und C Compiler 14 November 2023 abgerufen am 14 November 2023 Download NET 6 0 Linux macOS and Windows Abgerufen am 23 September 2022 amerikanisches Englisch NET Release Notes NET Platform 23 September 2022 abgerufen am 23 September 2022 a b Docker Hub Abgerufen am 23 September 2022 Install NET Core SDK for Linux using the Snap Store Abgerufen am 24 September 2022 englisch Announcing NET Core 3 0 23 September 2019 abgerufen am 12 Oktober 2019 amerikanisches Englisch LakshanF Native AOT deployment overview NET Abgerufen am 17 November 2022 amerikanisches Englisch Announcing NET 6 The Fastest NET Yet 8 November 2021 abgerufen am 29 Marz 2022 amerikanisches Englisch Announcing NET 6 The Fastest NET Yet 8 November 2021 abgerufen am 29 Marz 2022 amerikanisches Englisch Rider die plattformubergreifende NET IDE von JetBrains Abgerufen am 24 September 2022 Announcing NET Core 2 0 Preview 1 10 Mai 2017 F and NET Core Roadmap Update 14 August 2017 NET Core 3 1 erscheint mit Long term Support In heise online Abgerufen am 4 Dezember 2019 PeachPie Documentation Abgerufen am 7 September 2020 peachpiecompiler peachpie PeachPie Compiler Platform 6 September 2020 abgerufen am 7 September 2020 heise online PHP Compiler fur NET PeachPie erreicht Version 1 0 Abgerufen am 16 Marz 2021 rpetrusha NET Core Anwendungsbereitstellung NET Core Abgerufen am 23 Juni 2019 deutsch Rich Lander Leitfaden fur NET Core Abgerufen am 22 August 2017 NuGet Gallery Home Abgerufen am 16 Marz 2021 englisch Bill Wagner Erstellen einer NET Standard Klassenbibliothek mit C und NET Core in Visual Studio 2017 Abgerufen am 20 November 2017 NET wrapper for Gtk and other related libraries Contribute to GtkSharp GtkSharp development by creating an account on GitHub GtkSharp 10 August 2019 abgerufen am 10 August 2019 Avalonia UI Home Abgerufen am 25 Oktober 2023 cartermp NET Framework Technologien die fur NET Core und NET 5 und hoher nicht verfugbar sind Abgerufen am 28 August 2022 deutsch CoreWCF CoreWCF Core WCF 26 August 2022 abgerufen am 28 August 2022 Was ist WCF Abgerufen am 28 August 2022 mairaw Weitere Informationen zu NET Core Abgerufen am 4 Dezember 2019 deutsch Maira Wenzel Tools fur die NET Core Befehlszeilenschnittstelle command line interface CLI Abgerufen am 26 September 2017 Abgerufen von https de wikipedia org w index php title NET Plattform amp oldid 239420609