QML
| Парадигма: | мульти-парадигмова: декларативна, реактивна, скриптова |
|---|---|
| Дата появи: | 2009 |
| Розробник: | Nokia |
| Останній реліз: | 4.8.3[1] () |
| Система типізації: | динамічна, строга |
| Під впливом від: | JavaScript, Qt |
| Вплинула на: | Qt |
| Сторінка інтернет: | For Developers |
QML (Qt Meta Language або Qt Modeling Language[2]) — декларативна мова програмування, заснована на JavaScript і призначена для розробки застосунків, які роблять основний наголос на користувацький інтерфейс[3]. Є частиною Qt Quick, середовища розробки користувацьких інтерфейсів, поширюваного разом з Qt. В основному використовується для створення застосунків, орієнтованих на мобільні пристрої з сенсорним управлінням.
QML-документ являє собою дерево елементів. QML елемент[4], так само, як і елемент Qt, являє собою сукупність блоків: графічних (таких, як rectangle, image) і поведінкових (таких, як state, transition, animation). Ці елементи можуть бути об'єднані, щоб побудувати комплексні компоненти, починаючи від простих кнопок і повзунків і закінчуючи повноцінними застосунками, що працюють з інтернетом.
QML елементи можуть бути доповнені стандартними JavaScript-вставками шляхом вбудовування .js файлів. Також вони можуть бути розширені C++ компонентами через Qt framework.
Зміст |
Синтаксис, семантика [ред.]
Приклад:
import QtQuick 1.0 Rectangle { id: canvas width: 200 height: 200 color: "blue" Image { id: logo source: "pics/logo.png" anchors.centerIn: parent x: canvas.height / 5 } }
Об'єкти задаються їхнім типом, зазначеним перед парою фігурних дужок. Типи об'єктів завжди починаються з великої літери. У вищезгаданому прикладі є два об'єкти: Rectangle і Image. Усередині фігурних дужок можна задати інформацію про об'єкт, наприклад, його властивості. Властивості задаються у вигляді <властивість>: <значення>. У цьому прикладі в об'єкта Image є властивість source, якій присвоєно значення «pics/logo.png». Властивість та її значення розділяються двокрапкою.
Інструменти розробки [ред.]
Оскільки QML і JavaScript дуже схожі, то будь-які середовища розробки, що підтримують JavaScript, можуть бути використані для роботи з QML. Також повна підтримка підсвічування синтаксису, автозавершення коду, вбудована довідкова система доступні у крос-платформовому середовищі розробки Qt Creator 2.1.
Виноски [ред.]
- ↑ «Qt 4.8.3 Released». 13 September 2012.
- ↑ «Henrik Hartz (Product Manager for Qt Software at Nokia) comment on the name». 24 August 2009. Процитовано 2011-06-14.
- ↑ [http://developer.qt.nokia.com/wiki/GettingStartedQMLRussian GettingStartedQMLRussian | Qt Wiki | Qt Developer Network
- ↑ «Qt 4.7: QML Elements». Doc.qt.nokia.com. Архів оригіналу за 2012-08-11. Процитовано 2010-09-22.
Посилання [ред.]
- Введение в QML (рос.)
- QML приклади і демо (англ.)
- Qt Labs блог, пов'язаний з QML (англ.)
- Навчання QML (англ.)
|
||||||||||||||

