Lately Microsoft has made an announcement about its intention to create the development tool of the future – single platform .NET 5.0.
At Microsoft Build 2019, Richard Lander shed light on .Net 5.0 which is to be released in November 2020, i.e. just a year after announcement of .NET Core 3.0.
The next version of .NET called .NET 5.0 is aimed to unite Xamarin, .NET Framework and .NET Core, giving developers an opportunity to work with any of the existing .NET branches on different target platforms. There will not be any separate releases of .NET Core and .NET Framework. For this reason, Microsoft skips the version 4.0, in order to avoid any confusion with the last version of .Net Framework 4.x.
Corporation ensures that .NET will become easier-to-use, while it will comprise more functional capabilities. Taking the best from each platform, it entails support of all .NET application types. .Net 5.0 can be used both on the phone and desktop, as well as on Web with merely no difference. Besides, a single version of .NET provides interoperability with Java and Swift like Mono which currently allows you to interact with native mobile application libraries.
As a result, .NET 5 will support different operation systems such as Windows, MacOS, Linux, Android, iOS etc. That is why .NET 5.0 can be considered as the next step in the development of .NET Core.
Developing a single version of .NET Microsoft aimed at:
- Creating single common language runtime and platform so as to enable developers to use their previous experience in work with different runtimes.
- Interoperability with Java, as well as with Objective-C and Swift on all platforms.
- Converging of the base class libraries due to improvement of CoreFX.
According to Microsoft .NET Blog, a major version of .NET is to be shipped in each subsequent year after release of .NET 5.0. Long Term Support is to be provided respectively.
.NET Schedule provided by devblogs.microsoft.com
Development with .NET 5.0
So what will the development with .NET 5.0 be like? Will .NET change a lot or remain the same under a different cover? Let’s look into the matter more deeply.
Considering languages, runtimes and compliers, .NET 5 will support major of them which have been already supported by .NET Core and .NET Framework. XAML, C#, F#, and VB.NET are supposed to be integrated into .NET 5.0. CoreCLR and Mono will further work together.
Desktop and Mobile Development
.NET 5 will support all main desktop platforms and development libraries. Windows Forms, UWP, WPF along with Xamarin will be a part of version 5.0 and still will be used for Windows desktop applications. The last one will be also used for building cross-platform applications for iOS, Android, tvOS, macOS and watchOS. Sub frameworks such as Entity Framework, ADO.NET, GDI+ and LINQ will be supported by .NET 5.0 as well.
In the future, Web and cloud applications still will be built with the help of Web API and ASP.NET Core within .NET 5.0.
One of the main components of .NET 5 also will be Azure which enables developers to build, manage and test cloud applications.
Game Development still will be available due to Unity which is an essential part of .NET gaming. With the support of Visual Studio 2019 Unity will be used to create gaming applications for mobile, Xbox and other platforms.
IoT and Devices Development
.NET 5 will target both ARM32 and ARM64 and provide support for Windows IoT devices.
In .NET is carried out with ML.NET, which lets you apply gained skills, code and libraries, so that you can easily integrate machine learning into your mobile, web, gaming, desktop and IoT apps.
Taking into consideration all mentioned above, we can come to the conclusion that Microsoft with its upcoming release makes a big leap forward and lays the groundwork for the future of new direction with .NET. Corporation tries to combine already-existing with new runtime capabilities, APIs and language features as part of .NET 5. At the same time Microsoft confirms that there are no plans to include Windows Workflow, WCF server and Web Forms into .NET 5. Therefore the last version of .NET to support them will be .NET Framework 4.8, what means that Microsoft does not include all the technology into a single version and .NET Framework will remain to exist.
As you can see, with its high productivity and performance .NET 5 promises to be a revolution of .NET platform. But will result meet expectations? Question will be opened until the first half of 2020, when the first preview of .NET 5 will be available and will give us the answer whether .NET 5.0 will be the nearest future of .NET or a goal which Microsoft only remains to achieve.