it seems ridiculous that we have to embed an entire browser, meant for internet web browsing, just to create a cross-platform UI with moderate ease.

Why are native or semi-native UI frameworks lagging so far behind? am I wrong in thinking this? are there easier, declarative frameworks for creating semi-native UIs on desktop that don’t look like windows 1998?

  • prof@infosec.pub
    link
    fedilink
    arrow-up
    0
    ·
    9 months ago

    Ha! I’m looking partially at this issue in my bachelor’s thesis.

    It’s not at all necessary to embed a browser, but it’s really easy to transfer your web app to a “near native” experience with stuff like electron, ionic, cordova, react native or whatever other web stuff is out there. The issue is mostly that native APIs are complicated and relying on web views or just providing your own “browser” is a relatively easy approach.

    Stuff like Flutter, Xamarin or .NET MAUI compile depending on the platform to native or are interpreted by a runtime. There’s a study I use that compares Flutter to React Native, native Java and Ionic on Android and finds that unsurprisingly the native implementation is best, but is closely followed by Flutter (with a few hiccups), with the remainder being significantly slower.

    The thing is. I don’t think these compiled frameworks lag behind in any way. But when you have a dev team, that’s competent in web development, you won’t make them learn C#, Xaml, Dart or C++, just to get native API access - you’ll just let a framework handle that for you because it’s cheaper and easier.

    • BatmanAoD@programming.dev
      link
      fedilink
      arrow-up
      0
      ·
      9 months ago

      I remember thinking that Qt seemed like a really good approach that should be more widely adopted…until I actually had to use it.

      Not that it’s terrible; it’s really not. But C++ is just not at all a good language for <s>anything</s> UI stuff.