QML, que es un superconjunto de ECMAScript (JavaScript), se usa para definir las interfaces, mientras que para la lógica de los programas suele mantenerse C++ (sin embargo, también es posible implementar parte de la lógica usando QML).