4 ms·
This is good news for experienced .NET developers and newcomers alike. It marks the end of the journey from legacy .NET Framework to fully open source cross-pla
by Todd 6y ago
This is good news for experienced .NET developers and newcomers alike. It marks the end of the journey from legacy .NET Framework to fully open source cross-platform .NET.
.NET Standard was confusing, and the ubiquitous TFMs in the early days were even more so. But all of those struggles where made to achieve a cross-runtime compatibility layer to make it easier to support both ecosystems. It was a Herculean effort by Microsoft, and they achieved it.
Now it's purpose has been served and as we move forward we can all just use the simple name of netX.Y, unless we're library authors that want to continue to support legacy .NET Framework as well.
- lostmsu 6y agoI am not sure about the end of the journey. Lots of legacy .NET Framework code means I will continue targeting .NET Standard 2.0. That's why nobody used 2.1 - it did not support legacy framework. .NET 5 does not solve this problem. Just renaming .NET Core (3+1) to .NET 5 won't magically make legacy code portable. Also, there is still very popular Unity 3D, that can target later framework, but will continue to run on the legacy one itself for a while.
- WorldMaker 6y agoMy understanding is that Unity is hoping to catch up as soon as some of the final AOT stuff merges from Mono into .NET 6, so "for a while" in the case of Unity is now supposed to be a year or less (given Preview versions).
- pjmlp 6y agoUnity already has their own AOT, two implementations actually.
- goto11 6y agoI fear it marks the beginning of a very long dark journey, where .net developers are forced to work on more and more obsolete software while looking with envy towards other platforms which are actually maintained. The "core" migration is not a problem for short-lived startups, but .net is used a lot in business and enterprises. They don't rewrite their whole stack every two years but prefer an incremental approach. Since a lot of libraries will never be ported to core, a lot of enterprises will never migrate, since there will always be this critical internal app on web forms or whatever. It is amazing that .net now runs on Linux, but it is a disaster that this platform change is tightly coupled to completely unrelated components like the C# compiler version. Developers on the framework now is stuck on an obsolete version of C# forever, cannot upgrade entity framework and so on. C# attracted a lot of Java developers back when it got lambdas and Linq and async and whatnot, and Java seemed stuck in last century. Is it going to be the other way around in the future?
- register 6y agoThat's not my experience. Enterprises usually schedule far in advance budget specifically for the sole purpose of upgrades. Every product has a life of end support and projects to move to the next version are a reality in the enteprise market that brings a lot of money to the table. For .NET it will be exactly the same.
- bouke 6y agoI agree, probably even more polarizing than the Python 2/3 fiasco. All big applications in C# have been built on .Net Framework and migration to Core is non-trivial if you use any of the EOL technologies. OSS has mostly migrated by now, so on Framework you’re left with outdated dependencies that might have fixed security holes, but you cannot upgrade. Also we’re stuck with C# 7.3 as 8 requires .Net Core 3.