4 ms·
Of course you'll always have different ways of building UIs depending on circumstances but eventually some consensus will be reached for a default approach. Wi
by mcluck 3y ago
Of course you'll always have different ways of building UIs depending on circumstances but eventually some consensus will be reached for a default approach.
WinForms used to be the default for Windows, Tk was the default for Linux (or at least that was my impression, I was all in on Windows back then), etc.
For many people, using web tech has become the default if you want to build cross platform UIs. You have the option of building with imgui, Qt, Gtk, etc. but I don't think it's controversial to say that your average dev who wants to make a cross-platform GUI will probably use Electron or an Electron-like.
I really want to have a default for the Rust space. I've even done some work here myself which is why it's surprising to me that we aren't there yet
- alkonaut 3y agoOSes that come with a native UI obviously have that as the default. But there will never be a default across OSes I think. Web UIs might be that, but I sure won't want to use html or js anywhere in my UI's if I can help it, even if cross platform. Java might perhaps be the best example of trying to make a default-for-a-language cross platform UI (Swing and whatever it was called that came before it). But I think it's also an example of why it might not be a great idea to even try. I think a key realization is that an app like Blender or AutoCad need a different UI paradigm than Spotify or a game overlay does, even on the same platform there are differences there. Apps that can use web based UIs tend to be more like Spotify than Blender...
- revelio 3y agoSwing is pretty nice UX these days actually. Try the very latest IntelliJ in "new ui" mode, it looks modern and has an incredibly productive UI with tons of keyboard shortcuts, specialized widgets, etc. The API is a bit old now, but you could easily put a reactive layer on top.
- int_19h 3y agoQt and Swing are pretty good at "not quite native but close enough" in practice, IMO. I would take either one over a web or Electron app that completely disregards native UX and rolls it own, which is typical of them.