Hacker News new | ask | show | jobs
by pavlov 1359 days ago
Why do you want to build a desktop app with the mobile framework rather than the desktop one?

I’m not saying it’s necessarily a bad idea, Apple enables the same nowadays with Catalyst (iOS APIs on macOS). But it doesn’t seem very popular. Just curious why you want to go this way.

2 comments

1. I consider Qt (incl. the "modern" part) a desktop framework (arguably the best one) with mobile support (perhaps very good support), not a mobile framework. Or would you say KDE is "for some reason made with a mobile framework rather than a desktop one"?

2. I am a solo developer and want one framework to write once, run everywhere (still looking for which will do the best job for me).

> I am a solo developer and want one framework to write once, run everywhere

So... Qt's C++ framework then?

Late edit: as an afterthought there are other languages that provide similar functionality. Xojo comes to mind as having capability to write once and run everywhere. It doesn't have the performance of C++ though and comes with a bunch of its own baggage.

I just heard you don't really have to use any language other than the Qt's internal ones any more.

Although performance is nice to have, it obviously is not the most important thing for me. Low verbosity (as little code necessary to write a functional and reliable UI as possible) and fast learning curve are the most important things.

> Low verbosity (as little code necessary to write a functional and reliable UI as possible) and fast learning curve are the most important things.

Qt and Xojo are both real contenders on these points. I would argue that Xojo has a faster learning curve if you already know BASIC but is perhaps much less expressive if you need any sort of complex computer science algorithms or data structures which is where C++ really shines.

Qt's learning curve is "pretty quick" but it of course comes with having to know a decent amount of C++, and possibly javascript, to utilize effectively.

> I just heard you don't really have to use any language other than the Qt's internal ones any more.

Yup absolutely. If it were me and I were building a UI, I would seriously consider Qt's framework. I don't particularly like Qt's framekwork (it still holds a lot of baggage from pre-C++11 days) but I must admit that it's fairly extensive, certainly cross-platform across desktop and mobile operating systems, and has a fairly quick learning curve to use.

AFAIK, QML is now their full strategy for desktop and mobile. QtWidgets is still supported but is considered somewhat legacy I believe. New projects are typically encouraged to use QML I think.
Can you provide a source for this?
Pretty much all the material they've pushed for, uhm, almost 15 years...?

Widgets are still supported (because they work, and they are used by lots of faithful Qt customers), but QML is where they've put pretty much all their development focus since the late 2000s.

I apologize for the confusion. I was addressing the remark,

New projects are typically encouraged to use QML I think

I wasn't wondering where they were putting their development time.

I think the point is "by whom" ? Does Qt say that somewhere? I haven't seen it. They certainly push QML, but they certainly are still activatly maintaining and improving their "old fashioned" widgets as well.
You are wrong about development focus. qtbase/qtwidgets are still very much being developed.
Not sure there is anything official, but I just uncovered this sentiment in my research after scouring tons of chat forums, etc. while researching GUI toolkits. There seems to be an understanding that QtWidgets is in "maintenance mode" and I'm told hasn't seen any new features in a while. I've also noticed many existing projects discussing migrating to QML (many don't, however, due to the amount of work).
Did you even read the article? They literally just announced new features for Widgets, in the section titled "Useful new features in Qt Widgets".