September 2017

Volume 32 Number 9

[Editor's Note]

Hard Core: Focus on .NET Core 2.0 and .NET Standard 2.0

By Michael Desmond | September 2017

Michael DesmondMicrosoft has been pushing hard with its cross-platform, open source vision of software development, promoting the .NET Core and ASP.NET Core frameworks, and presenting .NET Standard as a universal target for .NET-based development. In August, Microsoft released version 2.0 of .NET Core, ASP.NET Core and .NET Standard, enabling a more robust, inclusive and complete platform for development than ever before.

To help support that effort, MSDN Magazine is publishing a set of five feature articles focused on the new releases. Immo Landwerth kicks off the festivities with his feature, "Demystifying .NET Core and .NET Standard," where he addresses some of the confusion about the differences between .NET Framework, .NET Core and .NET Standard, and shows how Microsoft has developed a strategic vision for coding across the various flavors of .NET. Andrew Hall and Joe Morris follow that up with a hands-on dive into writing .NET Core apps on Windows, macOS and Linux using tools like Visual Studio, Visual Studio for Mac and Visual Studio Code.

Web development gets a lot of love in this issue. Mike Rousos introduces the new ASP.NET Core 2.0 framework, guiding readers through development of a simple ASP.NET Core Web site as he explains important ASP.NET Core concepts and technologies. Steve Smith follows with "Simpler ASP.NET MVC Apps with Razor Pages," which shows how this new feature of ASP.NET Core reduces friction common to MVC development while preserving flexibility. Finally, Microsoft Program Manager Nikhil Joglekar's "Snapshot Debugging for Production Apps and Services in Azure" illustrates how developers can diagnose production code bugs using the new Snapshot Debugger with Visual Studio and App Insights.

There's a lot going on in this issue and it reflects the excitement that Microsoft sees among developers in the field. Andrew Hall says that .NET Core is matching the quickened pace of modern development, by decoupling framework updates from the Windows OS and providing the ability to deploy side-by-side and even per-application copies of the framework.

"We commonly hear of customers who are stuck on much older versions of the .NET Framework, because a few applications on the server don't work correctly with newer versions, which means that all their applications are pinned to the lowest common denominator," Hall says. ".NET Core removes the problem of a single machine-wide installation of the framework, freeing developers to use the latest features for their new apps, without fear of impacting older apps running on the server."

Microsoft has made a concerted effort to increase the utility and clarity of its framework offerings. Steve Smith notes that both .NET Core 2.0 and ASP.NET Core 2.0 eliminate rough edges in the cross-platform savvy frameworks and strongly boost productivity.

"There is more of an emphasis on convention over configuration, especially in areas like Startup, so that developers don't have to deal with quite as much plumbing code in the basic project templates. All of the functionality is still available, but the expected path is now set up by default with much less code," says Smith.

Sitting atop all this is the .NET Standard specification of APIs, which Immo Landwerth says brings consistency to .NET-based development across .NET Framework, .NET Core and Xamarin. Developers who target .NET Standard 2.0 can build libraries that can be used from any .NET implementation or supported OS, including Windows, Linux, Android, macOS and iOS. If you want to maximize the reach of your code in the most consistent and reliable way, .NET Standard is the way to do it.


Michael Desmond is the Editor-in-Chief of MSDN Magazine.


Discuss this article in the MSDN Magazine forum