8 ms·
Uno has been around for over 4 years. Wondering why this hasn't picked up so far, albeit being a very flexible platform/framework.
by arunc 2y ago
Uno has been around for over 4 years. Wondering why this hasn't picked up so far, albeit being a very flexible platform/framework.
- mpartel 2y agoThe rather prominent XML on the front page might scare folks off.
- neonsunset 2y agoInterestingly enough, in practice, there are various declarative SwiftUI-style nuget packages for Avalonia[0][1][2] and Uno[3]. You don't actually have to touch XML if you don't want to. Edit: as someone else noted, the website itself links to a built-in option to do so as well - https://platform.uno/c-markup/ https://platform.uno/c-markup/ [0] https://github.com/AvaloniaUI/Avalonia.Markup.Declarative https://github.com/AvaloniaUI/Avalonia.Markup.Declarative [1] https://github.com/wieslawsoltes/NXUI https://github.com/wieslawsoltes/NXUI [2] (F#) https://github.com/fsprojects/Avalonia.FuncUI https://github.com/fsprojects/Avalonia.FuncUI [3] https://github.com/VincentH-Net/CSharpForMarkup https://github.com/VincentH-Net/CSharpForMarkup
- pjmlp 2y agoPlenty of folks that criticise XML, have no issues dealing with JSON and YAML spaghetti, ironically.
- mpartel 2y agoI agree. It's just quite a lot of verbose-looking XML. "I have to write that much XML" is probably not the first impression you want to give. I did scroll down and see that you don't actually have to write such XML by hand, but many will not.
- sasakrsmanovic2 2y agoGood feedback. C# and XAML are on parity. But if you are seeing too much of one and not the other, it needs to be adjusted
- ejiblabahaba 2y agoPresumably because, much like the half-dozen other flexible cross-platform frameworks Microsoft and friends have gotten one-third of the way to a viable product before abandoning to chase the next shiny thing, it's riddled with bugs, about ten years behind the documentation of a more usable framework from the 2010s, and has basically zero third party support from the likes of Infragistics and SyncFusion. UWP left behind a shockingly large number of perfectly serviceable pieces of WPF, at a time when the emergent UI experience on Windows 8 was being written off by almost everyone, Windows Phone was DoA, and people were starting to realize they could just write web pages and run GUIs in the browser instead. It's been a long, bumpy, downhill ride ever since. The fact that Electron.NET and Blazor is a serious UI suggestion from Microsoft these days should tell you everything you need to know. I'm sure with enough effort it's usable and maybe even nice in some ways. I did some proof-of-concept work with it two years ago and got maybe 50% of the way to where I wanted to be in 8 hours, but got stuck at styling issues for which there was limited documentation. In the end, I'm more confident these days in WPF + Avalonia if I really need cross-platform - even if there's comparable bugs and limited documentation, there's at least some momentum still behind the project. UWP, all three busted half-finished versions of WinUI, MAUI, Blazor + Webview2, Blazor + Electron.NET... even Avalonia, thanks to the weird decision to change styles to behave more like CSS... it all still struggles to be as usable as WPF.
- pjmlp 2y agoAs someone that went from a strong advocate of UWP, into a strong critic of UWP. They really messed up WinRT. Although not perfect at Windows 8 launch, its evolution until Project Reunion came to be had potential. It was .NET as it should have been from day one, a proper developer friendly wrapper on top of COM, and Microsoft had finally provided something comparable to C++ Builder for the C++ crowd. Instead they never delivered feature parity to WPF, killed .NET Native, C++/CX, the designer, and then started from scratch on Win32 side, while expecting everyone jump to put up with them, and follow for the ride. I consider that an ultimately lack of respect for paying customers.
- zerkten 2y agoC++ Builder fan from my early career. Did they add designer/XAML support for C++ and then kill it? Do you have to do C++ dev with code only now?
- isodev 2y agoAll cross-platform frameworks are somewhat underdelivering on their promises. Even if you get an app going quickly, you end up in some kind of maintenance hell a few months down the road. This is a 3rd party framework on top of .NET (which itself is a 3rd party on mobile) which is 2 layers of abstraction on top of the actual thing that will run on the user's device. Microsoft takes a full year to update their GitHub runners with the latest macOS and Xcode versions, can you imagine the risk of having to wait for so many parties to update/fix their things? Flutter and RN are not immune to this effect, every year when there is a new iOS or Android release, existing apps just break and tooling takes quite some time to catchup. It's so many side quests suddenly appearing without added value for the developer or the user.
- cageface 2y agoSo far I have found this to be much less the case with Flutter than RN. With RN I came to dread upgrading anything more than a few months after starting a new app.