Pros:
- - If you write your application in C++ and Qt, you will result in part of Windows RT, Android, and iOS codebases. However, if you want native app experience, cross platform user experience is different. Now, the Qt developers are working on it.
- - Certain domains cooperate in an easier way with C++. It is not a problem with effectiveness or speed, but some systems, like books or libraries, work better with C++. Java or Obj-c have less image processing resources than C++.
- - IQT isn’t simply a user interface library, so when you want to write an app for Windows and QT, you will write it in C++ and it will be uncomplicated to change it to work with Android, as there exist cross-platform modules, like database, media playback, networks, and so on. It is vital for testing. The support of docs and tools are on a good level as well.
Cons:
- - Lack of platform support is one of the main problems in Qt. For instance, when you want to have particular feature on Android and it is not included in Qt, you must cope with JNI, and this is a trouble, because it evokes the set of complications.
- - Bad news for advertising support. Official Qt support for main Ad Networks doesn’t exist. You may find something related to it only in unofficial libraries. The bad thing is that, sometimes, you can find information for Android, but for iOS or WinRT, it is a hard task.
- - Problems with user experience in mobile versions can occur. It is okay when it comes to desktops, because there are more templates for this. With the mobile version, it gets more complicated, because for iOS and Metro, there are no profound libraries, though the general material support is great. As a result, you will need to write lots of platform specific things.
- - The time of startups of applications is long without using Qt Quick Compiler, and to get this, you must obtain the Commercial version of Qt.