Qt is changing from C++ library to QML library... with KDAB
-
@A.K.G. said in Qt is changing from C++ library to QML library... with KDAB:
When they are using Visual Basic, they are reading up on VB code, how to create user interfaces etc. but when using Qt they are not reading up on C++ but QML, and get confused about what Qt really is.
Then perhaps you or whoever their teacher is should start with introducing them to the widgets module, which has no connection to QML and can be used with C++ exclusively ... See, QML isn't a requirement (still), it's an option.
-
@kshegunov said in Qt is changing from C++ library to QML library... with KDAB:
@A.K.G. said in Qt is changing from C++ library to QML library... with KDAB:
When they are using Visual Basic, they are reading up on VB code, how to create user interfaces etc. but when using Qt they are not reading up on C++ but QML, and get confused about what Qt really is.
Then perhaps you or whoever their teacher is should start with introducing them to the widgets module, which has no connection to QML and can be used with C++ exclusively ... See, QML isn't a requirement (still), it's an option.
Yes, that is what we are doing. The problem arise when they open QtCreator on their own to play around with the examples. Many of them get confused on what Qt is, and many think that we are using Qt even though it is actually intended for something called QML and not C++
They normally go to Wikipedia where you can read the following on QML:
QML (Qt Meta Language or Qt Modeling Language) is a user interface markup language. It is a JSON-like declarative language for designing user interface–centric applications. Inline JavaScript code handles imperative aspects. It is part of Qt Quick, the UI creation kit developed by Nokia within the Qt framework.
After the last line above, they conclude that you create UI in Qt framework with Qt Quick. A few are even surprised that we can use widgets, as they think that all UI is done in QML.
Now again, this is the perspective these students have. They connect Qt with a language developed by Nokia that is called QML, that is part of Qt Quick, that is the Qt framework - that we use to create user interfaces.
The comment about C++, on the same page sounds like C++ is an optional path:
Elements can also be seamlessly integrated and extended by C++ components using the Qt framework.It sounds like the main used is QML and Javacript, and in the end they mention that elements can also be integrated and extended by C++.
Some then ask if we can not use a framework that is more directed towards only C++, instead of using Qt.
So in the mind of most of these students, Qt is about QML and Javascript, to make user interfaces for mobile phones. They arrive at this conclusion, starting with the example list in QtCreator, going through articles for example on Wikipedia about QML. They are missing the point totally, that Qt is a C++ framework, that mostly has been used for business application with widgets in pure C++.
I hear that most of you reading and replying to this topic, does not see it this way, but I have to conclude at the end, that I understand why the students see it this way. I also wish Qt Company and partners like KDAB would clean this up in their marketing, because it really is having an effect on how newcomers look at what Qt really is.
-
Many of them get confused on what Qt is, and many think that we are using Qt even though it is actually intended for something called QML and not C++
You can redirect them to Qt's wikipedia page, where it's written:
Qt uses standard C++ with extensions including signals and slots that simplify handling of events, and this helps in development of both GUI and server applications which receive their own set of event information and should process them accordingly. Qt supports many compilers, including the GCC C++ compiler and the Visual Studio suite.
and continues on to explain what QML is:
Qt also provides Qt Quick, that includes a declarative scripting language called QML that allows using JavaScript to provide the logic. With Qt Quick, rapid application development for mobile devices became possible, although logic can be written with native code as well to achieve the best possible performance.
Should be that simple.