QML | |
---|---|
Класс языка | декларативный, скриптовый |
Появился в | 2009 |
Разработчик | Qt Project |
Расширение файлов |
.qml |
Выпуск | 6.4[1] (29 сентября 2022 ) |
Испытал влияние | JavaScript, Qt, CSS |
Сайт | doc.qt.io/qt-5/qtquick-q… |
QML (Qt Meta Language или Qt Modeling Language[2]) — декларативный язык программирования, в основании которого лежит среда JavaScript. QML используется для разработки приложений, делающих основной упор на пользовательский интерфейс[3] и, в целом, на дизайн графической части. Является частью Qt Quick, среды разработки пользовательского интерфейса, распространяемой вместе с Qt. Часто используется для создания приложений, ориентированных на мобильные устройства с сенсорным управлением.
QML-документ представляет собой дерево элементов. QML элемент[4], также как и элемент Qt, представляет собой совокупность блоков: графических (таких, как rectangle, image) и поведенческих (таких, как state, transition, animation). Эти элементы могут быть объединены, чтобы построить комплексные компоненты, начиная от простых кнопок и ползунков и заканчивая полноценными приложениями, работающими с интернетом.
QML элементы могут быть дополнены стандартными для JavaScript вставками путём встраивания .js файлов. Также они могут быть расширены C++ компонентами через Qt framework.
QML - это язык разметки; его средой выполнения JavaScript являлся пользовательский движок V4.[5]
Код QML и JavaScript может быть скомпилирован в собственные двоичные файлы C++ с помощью Qt Quick Compiler.[6] Для удобства разработки существует формат файла кэша QML[7] который динамически сохраняет скомпилированную версию QML для более быстрого старта при следующем запуске.