4 ms·
They have allienated C++ devs by imposing on them the abomination that is QML. The first thing they should do is to provide a public API for using QtQuick solel
by zerr 4y ago
They have allienated C++ devs by imposing on them the abomination that is QML. The first thing they should do is to provide a public API for using QtQuick solely in C++.
- bombolo 4y agoI think their plan was to attract js developers, letting the C++ code to be hidden behind a curtain and the UI stuff to be written in js. But since to run it still needs a main() to call the QML part, probably js developers stay as far away from it as possible.
- rleigh 4y agoThis is exactly the reason I've avoided QML. Give me a 100% C++ API and I will reconsider.
- rubymamis 4y agoGive it a shot, I learned all the basics in a day. The next day I had a working prototype for a new feature. See: https://github.com/nuttyartist/notes/pull/574 https://github.com/nuttyartist/notes/pull/574
- jeroenhd 4y agoAs an outsider, I have to ask: what's wrong with QML? Was there a better, earlier layout language before QML that I don't know about?
- toyg 4y agoThe problem with QML is that it's not C++. Most Qt developers are C/C++/Python folks, being forced to use JS is not their idea of fun. Also, for some time the prebuilt QML widgets didn't have feature parity with the old QtWidgets. I think they're now there, but it's still a different philosophy: QtWidgets tried hard to fit in the desktop paradigm (with tray icons, desktop services, etc), whereas QML simply doesn't care - QML more or less expect to simply take over the screen and do everything on their own, web-style. Again it's a culture clash with traditional QT that QML creators seem to have fundamentally underestimated.
- detaro 4y ago> being forced to use JS is not their idea of fun. QML is not JS. Indeed, lots of high-quality QML applications use basically zero JS inside their QML, and heavy JS use is widely (but not universally) considered an anti-pattern. If using QML is forcing you to write meaningful JS (vs you choosing to use JS for whatever reason), you are probably holding it wrong. (sure, technically "property: a + 15" involves JS because "a + 15" is a JS expression, but not in any sense that a C++ programmer would mind)
- rubymamis 4y agoI beg to differ, QML is great. I'm implementing a feature that converts all tasks in Markdown editor to a Kanban view (written in QML) and it's been so easy to do. Work in progress GIF here: https://imgur.com/a/sZNHnp6 https://imgur.com/a/sZNHnp6 And it's even crazier that most of it compiles to C++. It's so fast to develop with it, and runs so fast. BTW, source code here: https://github.com/nuttyartist/notes/pull/574 https://github.com/nuttyartist/notes/pull/574
- peter-haha 4y agoThat's exactly what we are doing with QSkinny: https://github.com/uwerat/qskinny https://github.com/uwerat/qskinny, we have been using it for a customer project for years now...
- distances 4y agoAlternative view: QML passed QtWidgets already in 2010 both in developer experience and quality of outcome. That's 13 years ago. It's time to let go.