Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

    > Because most 'real .net devs' still work on .NET 4.x legacy
That may be true, but .net core is definitely aiming to increase adoption and it makes a compelling case. The new stuff is a pleasure to use.

I almost wish Microsoft would stop putting much effort into dead ends, however. It's going to be possible to use WPF and even Windows Forms after .net 5 transition (they'll be windows-only libraries). VB .NET is still kicking (just let it die already). I wish they would have folded all those person-hours into .net core stuff instead.



VB.NET is pretty much alive in many life science enterprise shops.

It is their escape route when they outgrow Excel/VBA.


What's the not-dead end way of making GUIs in .net core supposed to be?


For Windows, .Net Core 3 lets you create Windows GUI apps using the standard Windows frameworks (UWP/WPF/WinForms)

https://devblogs.microsoft.com/dotnet/net-core-3-and-support...

For cross platform there isn't an official solution, the closest would be deploying as an Electron app.


The official cross platform solution for GUI apps is Xamarin / Xamarin.Forms, though they are mostly focused on mobile. There are desktop renderers for those, but they are currently in some weird Schrodinger's Cat state between "officially supported" and "community supported".

There are other entirely community-supported/third-party efforts like Avalonia and Uno around as well.



All Microsoft GUI frameworks are dead ends, whatever is the current recommendation will be replaced within a couple of years and the old stuff will be left to rot.

It may change with the shift to open source but I'm not holding my breath.


UWP XAML has lasted more than a few years already and is quite actively developed, with some pretty big updates on the horizon. While there are many roads to UWP XAML (including UWP XAML Islands now), and those have shifted over time, the core has remained quite steady. (Which is to say that it hasn't been immune to tech debt churn of small little backward compatibility breaks that need migration every minor version or so, as all frameworks in the modern era seem to.)

The last GUI framework they entirely "left to rot" was Silverlight, and that was a) almost a decade ago now, and b) a fellow traveler in the XAML space where migrations were quite possible, if maybe not always easy/convenient, back to WPF or forward to UWP.

With the weeding of some of WinForms and WPF in recent .NET Core work, and the addition of XAML Islands, even what were the dead ends don't necessarily look so dead today, or at least not so rotten.


Four years. But Microsoft have already acknowledged it's a dead end and are encouraging win32 apps into their store. Even the Wikipedia page refers to it in the past tense. Also wasn't there talk of a new UI kit at the last Build event?


WinRT released in 2012, so UWP is 7 years old. Yes, the UWP name/brand is younger than that, but the tech stack has been continuous, with strong backward compatibility.

Microsoft may be encouraging Win32 apps in the store, but is clearly saying that Win32 is undead and they'll continue to support the zombie and stop trying to kill it. They hope people will move on and they are providing more tools than ever to help migrate from Win32 to UWP. It's now a much more nuanced migration rather than a forced all-or-nothing conversion.

Wikipedia pages refer to everything in the past tense. That's the encyclopedia tone they require.

The closest thing to a "new UI kit" announced at the last BUILD was the ground up rewrite of the Windows version of React Native to make it "extra-Native". That change is from UWP/C#/XAML to UWP/C++/XAML. It's still JS controlling UWP controls, it's just using C++ to glue together the controls rather than C#/.NET.

The next closest announcement to a "new UI kit" was that way more of the UWP UI stack (almost all of it) is being "lifted and shifted" out of being directly inside the Windows codebase and deeply coupled to Windows releases and being moved in the WinUI library. WinUI has always been the parts of the UWP UI shipped outside of Windows Releases. UWP is moving to a model where they want to have as much as possible inside WinUI rather than inside Windows to make it easier to ship UI controls updates to application developers without so much of the rigmarole of "this control will only be in Windows 10 19H2 and later" making it easier for developers to use the controls "now" rather than waiting for a future Windows feature update and less headaches between what is in a current LTS feature update versus most current feature update.

(The next closest announcement after that, was that the Fluent Design team was merging the design efforts of what they've been doing for UWP/WinUI and what the Office team has been doing for the Web in the Fabric libraries, moving Fabric to being much more "Fluent Web". It should not be a surprise that the web is important to Microsoft's UIs.)


The "new" UI kit (WinUI) is the one from UWP, it's just being decoupled from Windows releases

https://github.com/microsoft/microsoft-ui-xaml/blob/master/d...


WPF and Windows Forms work today (Windows only) in .NET Core 3.x.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: