That’s it, it is official. Today in their weekly community stand-up the ASP.NET team announced what many .NET developers had been waiting to hear ever since ASP.NET vNext was announced back in 2014, that is there is no longer:

  • .NET Core 5
  • ASP.NET 5 (vNext)
  • MVC 6
  • Entity Framework 7

Instead we now have:

  • .NET Core 1.0
  • ASP.NET Core 1.0
  • ASP.NET Core MVC 1.0
  • Entity Framework Core 1.0

Scott Hanselman from the ASP.NET team explains in his blog post the motivation behind the name change but in summary the new naming is more aligned with the brand new .NET Core concept as a whole.

Just to note, this is not only a simple change of name, it is going to affect all of the .NET packages available on NuGet, APIs and even the namespaces making it very clear which flavour of .NET you wish to use.

For those of you who are not familiar with .NET Core, it is Microsoft’s official (unlike Mono) cross -platform implementation of the CLI running on Windows, OSX and Linux. And here is the good part…it is all open source together with the rest of .NET. Don’t believe me? take a look for yourself.

In short .NET Core can be summarized in the following diagram:

diagram of .net core components

So in other words .NET Core consists of: 1. #### CoreFX Includes the new _BCL_ i.e. `System.*` things like `System.Collections`, `System.Xml` etc. 2. #### CoreCLR The runtime implementation which includes _RyuJIT_, the _GC_, native interop and much more which runs cross-platform. 3. #### CoreRT The native runtime which is part of the new _.NET Native_ announced back in [April 2014](http://blogs.msdn.com/b/dotnet/archive/2014/04/02/announcing-net-native-preview.aspx) which is going to compile .NET natively ahead of time. 4. #### CoreCLI The Command Line Interface giving a new cross-platform command line experience on _Windows_, _OSX_ and _Linux_ which you can use to build .NET Core applications but it is also capable of building class libraries and _Console_ applications which can run on the full .NET framework. ASP.NET Core is the brand new framework built from the ground up on top of .NET Core which can also run on the full .NET framework, here's another nice diagram by _Scott_ to make it more clear in the larger .NET universe.

diagram of asp.net 4.6 and asp.net core 1.0

I like what I am seeing in this new world of .NET specially the great work that the ASP.NET team has been doing for the past year which includes [ridiculous](https://github.com/aspnet/benchmarks) performance; The future of .NET looks quite promising :-)


<
Previous Post
Unit Testing Internal Classes in C#
>
Next Post
Cleaner Pub-Sub using the Event Aggregator Pattern