QWidget vs Qt Quick Для разработки приложений для телефона

Хорошо, что я кодировал qt в течение 6 месяцев, и у меня есть довольно хорошее представление о QWidget и c ++-кодировании для настольных приложений, но я запускаю небольшую компанию, и мы разрабатываем телефонные приложения и настольные приложения для проекта, который мы делаем И в качестве менеджера проекта я упал, что qt является ответом на то, что у вас нет отдельных команд, кодирующих Android и iPhone.

Таким образом, решение кодируется в qt. Но я немного запутался в нескольких вещах. Я вижу, что обработка событий нажатием кнопки и т. Д. Обрабатывается на самом деле в qt быстро, но поскольку наши приложения будут довольно сложными в bg, мы должны иметь возможность кодировать в c ++ QWidget обычным способом. Поэтому мой вопрос:

  1. Что лучше QWidget или Qt быстро развивается для разработки наших приложений, которые должны быть совместимы на большинстве платформ, в основном с планшетами и смартфонами.

  2. Если мы перейдем к qt Quick way, вы можете одновременно использовать qt для большей части визуального изображения, а затем связать эти файлы с файлами c ++ (движок вашего приложения)? M если так, то какие-то примеры того, как я мог бы начать изучать, как это сделать.

  3. Есть ли действительно хорошие ресурсы о том, как разрабатывать эти телефонные приложения, учебные пособия и тому подобное, поскольку меня немного беспокоит нехватка ресурсов для обучения.

  4. Правильно ли я полагаю, что если бы мы пошли с qt быстро, чтобы эти приложения также были совместимы с телефоном Ubuntu?

  1. Я разработал приложения для maemo и meego, и я бы сказал, что QtQuick лучше и намного проще.

  2. Я бы сказал, что QML и C ++ qt-backend представляет шаблон MVC, где QML – это View и C ++ – модель и контроллер. QML – это не просто сценарий, который вы можете запустить. Вам нужен объект QDeclarativeScript в C ++ и передать ему файл qml, чтобы он мог начать. Итак, в любом случае вы сначала запустите приложение C ++, которое будет анализировать QML-скрипт. К последней части вопроса: вы можете создавать классы C ++ для экспорта в QML и использовать их там. Это очень просто, вы можете прочитать официальные руководства QtQuick, это хорошо объяснено там.

  3. Здесь нет ничего особенного. Просто импортируйте файлы в qml-проект и просто используйте элементы управления, контейнеры и т. Д. Каждый проект, будь то ubuntu-телефон или парусник, имеет учебники, руководства и вики. Более того, я разработчик KDE и разработал плазменные виджеты на QML – то же самое здесь, все, что вам нужно, это импортировать и использовать.

  4. Конечно. Почему нет? Но вам нужно иметь инструментальную цепочку для QtCreator, чтобы иметь возможность компилировать ваш проект для целевой архитектуры и иметь возможность запускать его там.