This article is more than 1 year old
Untangling .NET Core: Open source for Windows, Mac, Linux
More changes, but it'll be different this time, honest
Security patches? We haven't figured it out yet
How will Microsoft patch libraries distributed using app local, where a vulnerable version of a .NET component might be dotted in several places around a system?
“It’s unclear exactly how it is going to work because we haven’t decided yet. We want to figure out with the community what’s the best approach across Windows, Linux and Mac,” said Schmelzer, adding that the intent is at least to equal the experience with the .NET Framework, where Windows Update will handle security updates.
Why is it that Store apps apparently will use .NET Core, but this is impossible for desktop apps written in Windows Forms or Windows Presentation Foundation (WPF)?
“We did take the time with Store apps to go back and look at the layering of the framework and get it set up the way we needed it to enable things like .NET Core,” Schmelzer told El Reg. “The full framework had some places where the framework layering wasn’t as clean as we wanted it to be, types started to creep through the different layers, it wasn’t as composable as what we needed.”
The way .NET works in Store apps is changing though. Since the launch of Windows 8, Microsoft has developed .NET Native, which compiles to true native code with a dependency on just a small "minimum runtime" library to handle garbage collection, the automatic memory management in .NET.
“If you look on a Windows 10 or Windows 8.1 machine you will find mrt.dll”, Schmelzer explains. Microsoft intends that .NET Native will be the norm for Store apps.
How about .NET for Windows Phone, strangely absent from Microsoft’s .NET Core diagrams? “We have not said anything about timelines for that,” said Schmelzer. “Really .NET Native is just a next step evolution for something that we’d done on the phone back with Phone 8, when we introduced an intermediate compilation step that happens in the Phone store, close to native, and then send that down to the phone. It is taking that piece and moving it into the tool chain, so you actually have a native image from the store to the device.”