Writing pure QML applications has the advantage of easing porting to Qt 5. While QtQuick 1.1 still exists on Qt 5 (and is the only QML option at the moment if you are also targetting iOS), QtQuick 2.0 is usually the better choice for performance reasons.
In my case, the changes necessary to port from QtQuick 1.1 to QtQuick 2.0 were:
- Change "import QtQuick 1.1" to "import QtQuick 2.0" (sed(1) helps here)
- Instead of using SQL Local Storage directly as in QtQuick 1.1, use QtQuick.LocalStorage 2.0, which you can still do in your .js files - use ".import" as described in this blog post
- In your C++ launcher (in case you need one), QApplication becomes QGuiApplication, and QDeclarativeView becomes QQuickView
- Use "QT += quick qml" instead of "QT += declarative" in your qmake project file