Porting to .NET Core is quite prominent nowadays and here we endeavor to simplify the porting effort with the unification of core APIs with other .NET platforms, mainly the .NET Framework and Mono/Xamarin.
Easy ways for .NET COR porting are no less than bliss for .NET developers as their efforts will be reduced to a large extent. Now let’s discuss how it has become easier to port to .NET core in detail for better understanding.
Reflecting on .NET Core
The .NET core platform has come a long way from the intention to develop a modern, modular, app-local and cross-platform .NET stack. The business objectives behind its creation had their focus on offering a combination of brand new application types (like touch-based UWP apps) or modern cross-platform applications (like ASP.NET Core websites and services).
Ready to ship .NET core 1.0, we successfully created a robust and cross-platform development stack. .NET core 1.0 is just the initial way to get .NET everywhere and as you adopt .NET core, it requires present .NET developers to spend a large amount of time in porting it. Constant efforts are required to be put in order to extend the reach of the .NET platform in order to get new customers but that can’t be done at the cost of the existing users.
Xamarin suits it the best allowing .NET developers build mobile applications for the iOS and Android platforms with little effort. Consider iOS that shares several of the characteristics of the UWP platform, like the high focus on end-user experience and need for static compilation. Ever since it began, the key promise of .NET has been to allow developers to be more productive and it helps them write a powerful code.
On our part, it’s ensured to deliver what we promise and offers a unified core API available out there. It enables developers to easily share code across these workloads and they can focus their skills where it matters; thus, it creates amazing services and user experiences.
.NET Core moving forward
No matter you require building a desktop application, a mobile app, a website or a micro service, you can easily depend on .NET to accomplish your goals. Code sharing is way easier as it offers a unified BCL and being a developer, it’s easy to focus on the features and technologies specific to the user experience and platform you aim to target.
Using it, it’s easier to bring existing code extending to libraries and NuGet packages and this comprises portable class libraries; no matter ms cor lib or System.Runtime was used or not.
What does it signify?
As .NET core was designed, it mainly focuses on modularization and pay for play, which signifies that you just require consuming the disk space for the features you are using. Now these are the goals that can be realized easily.
At the beginning, we aimed to attain minimum disk space usage that depended on a manual process to split the functionality in tiny libraries and we knew quite well that it was liked by the users. And now we offer a linking tool that’s way more precise and offers better savings as compared to any manual process could have offered. Now, it’s quite similar to what Xamarin developers attain today.
Timelines and process
The procedure of extending the API surface of .NET Core comes post we ship .NET Core 1.0 RTM. This way the ones, who follow .NET Core, can easily deploy to production. There will be more details and plans over the next couple of weeks published in our core fx GitHub repository. It’s well-understood that it’s vital to publish a set of API references listing which APIs we plan to bring. Thus, as the code is ported, you can tell if it’s required to jump to .NET Core 1.0 or it’s better waiting for the new APIs to arrive. The main intention of the developers is to offer a dashboard for our users so that they can check the project status and goals. This way, the process can be improved that was followed in the lead up to .NET Core 1.0.
In the end, we plan to release incremental updates to .NET Core on NuGet extending the set of available APIs. Thus, you need to wait till the entire API additions take place and it enables you to incorporate your response on behavioral compatibility.