Как стать автором
Обновить

Комментарии 14

Как то с плюсовым бэкендом у меня код покрасивее вышел. Да и вероятнее всего быстрее. лучше без сильной нужды не писать всё на чистом qml, многие вещи только сложнее будут.
Для тех, кто плюсами владеет — да, несомненно. Для меня же, например, такой вариант более приемлим.
НЛО прилетело и опубликовало эту надпись здесь
Ну по мне так QML должна выполнять именно свою функцию — GUI.
Типа вот как устроен радиоприемник. Есть гуи — сама коробка, крутилки там всякие, крутишь — стрелочка частот бегает… и т.п. Ничего не работает только, т.к. коробка пуста. Потом внутрь засовываешь всю электронику, подключаешь все проводками ( сигналы-слоты, модели ) и все заработало. Внутренности можно поменять на другие, как и выкинуть устаревшую коробку (гуи) и поставить новую и красивую. А можно вообще выпускать пять разных коробок с одной и той-же начинкой. ИМХО вообще любое приложение должно иметь возможность работать вообще без gui.
Если приложение практически полностью написано на QML, то вариант обойтись без кода на C++ очень заманчивый. Например, для виджета, показывающего погоду и опрашивающего сервер раз в час вполне подойдет.
Вот спасибо! Как раз запара была вчера на эту тему…
На QML очень красиво выглядят приложения в духе «браузер на весь экран» или «пару прямоугольников с двумя строками текста и картинкой». А как там нынче дела с полноценными UI-компонентами (ну там вкладки\таблицы\списки\менюшки)? Получится сделать полноценное приложение? И на всех платформах будет выглядеть нормально?
Есть такие компоненты, QtQuick Controls (раньше назывались Qt Desktop Components) В версии 5.1 они будут включены в состав Qt, а сейчас их можно собрать отдельно.
Меня вот удивляет, что переезд на QML, как на основную платформу для разработки начался с версии 5.0, при том, что в ней по-сути, без этих компонентов ничего существенного не напишешь, а выкатят их только в 5.1, да и то, как всегда, первым релизом пользоваться будет нельзя. Не понимаю таких переходов — на старое уже забили, а новое еще не выкатили.
Ну почему же, отдельно они вполне себе собираются и пользоваться можно. Доступны они уже как минимум два года, просто далеко не все и не сразу попадает в основную ветку Qt.
Да и без них под десктопы вполне можно делать интерфейсы, особенно с кастомным интерфейсом — там все равно придется свое делать. Игрушки, опять же.
А на мобильных платформах есть свои библиотеки QML компонентов. Это и Cascades в BlackBerry, и Silica у SailfishOS, у Ubuntu и тоже что-то свое есть.
И на старое никто не забивал, на виджетах все прекрасно пишется.
>и Cascades в BlackBerry, и Silica у SailfishOS, у Ubuntu и тоже что-то свое есть

Обожемой! Я почему-то был уверен, что компоненты придут к унификации на мобильных платформах, ан нет — у каждого свой велосипед. Прощай, утопичная идея кросскомпиляции.
Ну так у каждой платформы свои гайдлайны по интерфейсам, свой стиль и т.д. На десктопах разработчики Qt сделали библиотеку виджетов, которые выглядят нативно под каждой платформой. А на мобильных получается наоборот: разработчики мобильных платформ берут за основу элементы QML и расширяют их в сответствии со своими потребностями. Получается, что база одна, но у каждого свои особенности.
И ведь по другому и не получится. Если на десктопах еще есть некий стандартный устоявшийся набор виджетов, то на мобильных устройствах каждый лепит, что хочет. Так что предоставить им базовые компоненты, а они уже пусть расширяют — вполне здравая идея.
Надеюсь, что в реальной работе вы не прописываете обращения к АПИ в интерфейсе программы (вместе с разметкой).
QML — это не только разметка :) Кстати, можно этот код вынести в отдельную js-библиотеку.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории