Open main menu

.NET Core is a free and open-source, managed computer software framework for Windows, Linux, and macOS operating systems.[4] It is a cross-platform[5] successor to .NET Framework.[6] The project is primarily developed by Microsoft and released under the MIT License.[3]

.NET Core
.NET Core Logo.svg
Developer(s).NET Foundation
Initial releaseJune 27, 2016; 3 years ago (2016-06-27)[1]
Stable release
3.0.0 / September 23, 2019; 23 days ago (2019-09-23)[2]
Repository Edit this at Wikidata
Written inC++ and C#
Operating systemWindows, Linux and macOS
TypeSoftware framework
LicenseMIT License[3]
Websitedotnet.microsoft.com

HistoryEdit

.NET Core 1.0, announced on November 12, 2014,[7] was released on June 27, 2016,[1] along with Microsoft Visual Studio 2015 Update 3, which enables .NET Core development.[8] .NET Core 1.0.4 and .NET Core 1.1.1 were released along with .NET Core Tools 1.0 and Visual Studio 2017 on March 7, 2017.[9]

.NET Core 2.0 was released on August 14, 2017, along with Visual Studio 2017 15.3, ASP.NET Core 2.0, and Entity Framework Core 2.0.[10] .NET Core 2.1 was released on May 30, 2018.[11] .NET Core 2.2 was released on December 4, 2018.[12]

.NET Core 3 was announced on May 7, 2019, at Microsoft Build. Version 3.0.0 was released September 23 2019.[13] [14] With .NET Core 3 the framework will get support for development of desktop application software, artificial intelligence/machine learning and IoT apps.[15][failed verification]

The next release after .NET Core 3.0 will be .NET 5. The .NET Framework will be deprecated, and .NET 5 will be the only .NET going forward – hence the removal of the "Core" branding and skipping of version 4 to avoid confusion with the .NET Framework 4.x.[16]

Version Release Date Released with
.NET Core 1.0[17] 2016-06-27 Visual Studio 2015 Update 3
.NET Core 1.1[18] 2016-11-16 Visual Studio 2017 Version 15.0
.NET Core 2.0[19] 2017-08-14 Visual Studio 2017 Version 15.3
.NET Core 2.1[20] 2018-05-30 Visual Studio 2017 Version 15.7
.NET Core 2.2[21] 2018-12-04 Visual Studio 2017 Version 15.9
.NET Core 3.0[22] 2019-09-23[13] Visual Studio 2019 Version 16.3
.NET 5[23] 2020-11 (projected)

Language supportEdit

.NET Core fully supports C# and F# and partially supports Visual Basic .NET.

Currently VB.NET compiles and runs on .NET Core, but the separate Visual Basic Runtime is not implemented. Microsoft announced that .NET Core 3 would include the Visual Basic Runtime.[24] As of October 2018, C++/CLI is not yet supported,[25] although support is planned on Windows.[26]

ArchitectureEdit

.NET Core supports four cross-platform scenarios: ASP.NET Core web apps, command-line apps, libraries, and Universal Windows Platform apps. Prior to .NET Core 3.0, it did not implement Windows Forms or Windows Presentation Foundation (WPF) which render the standard GUI for desktop software on Windows;[27][28] however, .NET Core 3 supports desktop technologies WinForms, WPF and Universal Windows Platform (UWP).[29] .NET Core supports use of NuGet packages. Unlike .NET Framework, which is serviced using Windows Update, .NET Core relies on its package manager to receive updates.[27][28]

Similar to how the .NET Framework implements the Common Language Infrastructure (CLI) via the Common Language Runtime (CLR) and the Framework Class Library (FCL), the two main components of .NET Core are CoreCLR and CoreFX, respectively.

As a CLI implementation of Virtual Execution System (VES), CoreCLR is a complete runtime and virtual machine for managed execution of .NET programs and includes a just-in-time compiler called RyuJIT.[30][a] .NET Core also contains CoreRT, the .NET Native runtime optimized to be integrated into AOT compiled native binaries.

As a CLI implementation of the foundational Standard Libraries,[32] CoreFX shares a subset of .NET Framework APIs, however, it also comes with its own APIs that are not part of the .NET Framework.[27] A variant of the .NET Core library is used for UWP.[33]

The .NET Core command-line interface offers an execution entry point for operating systems and provides developer services like compilation and package management.[34]

NotesEdit

  1. ^ The prefix "Ryu" is the Japanese word for "dragon" (竜, ryū), and is a reference to the book Compilers:_Principles,_Techniques,_and_Tools and a character from the video game Street Fighter.[31]

ReferencesEdit

  1. ^ a b Bright, Peter (27 June 2016). ".NET Core 1.0 released, now officially supported by Red Hat". Ars Technica. Condé Nast.
  2. ^ "Releases · dotnet/core · GitHub".
  3. ^ a b "core/LICENSE.TXT". GitHub. Retrieved 2018-06-04.
  4. ^ "Download .NET Core". microsoft.com. Microsoft. Retrieved 31 October 2017.
  5. ^ ".NET Core is the Future of .NET".
  6. ^ ".NET Framework is dead -- long live .NET 5".
  7. ^ Landwerth, Immo (November 12, 2014). ".NET Core is Open Source". Devnetblogs. Microsoft. Retrieved 2019-06-24.
  8. ^ Foley, Mary Jo (27 June 2016). "Microsoft showcases SQL Server, .NET Core on Red Hat Enterprise Linux deliverables". ZDNet. CBS Interactive.
  9. ^ https://blogs.msdn.microsoft.com/dotnet/2017/03/07/announcing-net-core-tools-1-0/
  10. ^ "Announcing .NET Core 2.0". .NET Blog. 14 August 2017.
  11. ^ "Announcing .NET Core 2.1". blogs.msdn.microsoft.com. Retrieved 2019-02-15.
  12. ^ "Announcing .NET Core 2.2". blogs.msdn.microsoft.com. Retrieved 2019-02-15.
  13. ^ a b ".NET Conf 2019 - .NET Core 3.0 launches at .NET Conf!".
  14. ^ ".NET Core is the Future of .NET". .NET Blog. 2019-05-06. Retrieved 2019-05-17.
  15. ^ "What you should know about .NET Core". intelegain.com. Archived from the original on 22 November 2018. Retrieved 22 November 2018.
  16. ^ "Introducing .NET 5".
  17. ^ Announcing .NET Core 1.0
  18. ^ Announcing .NET Core 1.1
  19. ^ Announcing .NET Core 2.0
  20. ^ Announcing .NET Core 2.1
  21. ^ Announcing .NET Core 2.2
  22. ^ Announcing .NET Core 3.0 Preview 5
  23. ^ Introducing .NET 5
  24. ^ https://blogs.msdn.microsoft.com/vbteam/2018/11/12/visual-basic-in-net-core-3-0/
  25. ^ https://github.com/dotnet/coreclr/issues/659
  26. ^ https://github.com/dotnet/coreclr/issues/18013#issuecomment-432430625
  27. ^ a b c Carter, Phillip; Knezevic, Zlatko (April 2016). ".NET Core - .NET Goes Cross-Platform with .NET Core". MSDN Magazine. Microsoft.
  28. ^ a b Schmelzer, Jay (18 November 2015). ".NET 2015 Overview". Channel 9. Microsoft. 0:07:32.
  29. ^ Lander, Rich (7 May 2018). ".NET Core 3 and Support for Windows Desktop Applications". MSDN. Microsoft.
  30. ^ Landwerth, Immo (3 February 2015). "CoreCLR is now Open Source". .NET Framework Blog. Microsoft. Retrieved 27 February 2015.
  31. ^ "Why RyuJIT? How was the name chosen?". nuWave eSolutions Development Team Blog. Retrieved 21 June 2016.
  32. ^ Landwerth, Immo (4 December 2014). "Introducing .NET Core". .NET Framework Blog. Microsoft. Retrieved 27 February 2015.
  33. ^ "Intro to .NET Native and CoreRT". 23 April 2016.
  34. ^ "Intro to CLI". 23 April 2016.

External linksEdit