Здравствуйте, enji, Вы писали:
E>Я смотрел примеры от qt4.7, проглядел по верхам доку в ассистанте, почитал пару статей на хабре. Не понял самого главного — что в нем такого хорошего,
IMHO:
В рамках общей тенденции "Дизайн GUI должен быть более вычурным и индивидуальным" происходит делегирование дизайна приложения от программиста к дизайнеру. Поэтому авторы GUI библиотек стараются разделить зоны ответственности программиста и дизайнера. Даже если программист и дизайнер "един в двух лицах", имеет смысл разделить уровни абстракции (чтобы работая на одном уровне даже случайно не вторгнуться на более низкий уровень, и, в тоже время, был простор для полета фантазии художника).
Проявлениями этой тенденции являются: Windows Presentation Foundation (в C#), HTMLLayout, QSS и теперь QML.
E> когда стоит применять обычный гуй (формочки в дизайнере + uic), когда QML? Надо ли их как-то комбинировать, или это бессмысленно?
QML нужно применять, если есть исключительные требования к дизайну. Приложения "презентационного" уровня. (т.е. такие, которые шеф будет демонстрировать на презентациях...)
Здесь, как правило, работы на дизайном, больше чем над бизнес логикой.
Бывает, что и приложение "обычного применения" имеют одно-два окна, которые только на презентациях и показывают.
(Startup dialog, About, Wizard's, ...)
Приложения "широкого рынка" предъявляющие высокие требования к эмоциональной окраске интерфейса.
Например, читалки для электронных книг, музыкальные плееры...
Приложения окна которых должны сильно отличаться от стандартного GUI, из соображений безопасности (чтобы стороннему приложению было труднее подделать такое окно и/или чтобы пользователь относился их окнам иначе чем к "обычным" окнам?). Например, фаерволы и антивирусы.
(IMHO на самом деле это не нужно, но все антивирусы нынче применяют очень особенный GUI).
Приложения "широкого рынка", для которых важно выделиться на фоне окружающих, хотябы дизайном.
Например, при конкуренции в уже заполненных нишах, обычно среди идеологически несложных программ.
Самый яркий пример, какой я помню: http://www.awicons.com/ru/icon-editor/
Лично для меня, нестандартный интерфейс — недостаток, а не достоинство. Но, статистика скачиваний/продаж говори наоборот .
Есть еще ниша, применение нестандартного интерфейса в которой мне совершенно непонятно. Но все производители дружно городят нестандартный интерфейс.
1) программы обмена сообщениями (skype, miranda, ... ).
2) браузеры (все, кроме IE, да и он начал экспериментировать).
P.S.
Это мнение человека, который почитал и не стал принять эту технологию, поскольку моя предметная область не пересекается ни с одной из выше перечисленных групп.
Возможно, я просто чго-то не понял.
Я смотрел примеры от qt4.7, проглядел по верхам доку в ассистанте, почитал пару статей на хабре. Не понял самого главного — что в нем такого хорошего, когда стоит применять обычный гуй (формочки в дезигнере + uic), когда QML? Надо ли их как-то комибинировать, или это бессмысленно?
Если посоветуйте чего почитать на эту тему, буду признателен.
Здравствуйте, enji, Вы писали:
E>Я смотрел примеры от qt4.7, проглядел по верхам доку в ассистанте, почитал пару статей на хабре. Не понял самого главного — что в нем такого хорошего, когда стоит применять обычный гуй (формочки в дезигнере + uic), когда QML? Надо ли их как-то комибинировать, или это бессмысленно?
E>Если посоветуйте чего почитать на эту тему, буду признателен.
E>Спасибо!
QML создался как тест-проект но потом всем настолько понравился, что с версии 4.7 его переняли в Qt.
Идея простая — не надобность компиляции. Особенно для создания прототипов очень ценная вещ. QML код очень легко совмещается с Qt/C++ кодом.
Я участвовал в проэкте где QML очень даже успешно применялся. У фирмы куча клиентов, которым надо "свой" UI.
Так ядро программы написали в C++, а подстраеваемую оболочку в QML.
Я писал часть на C++, но точно знаю, что ни каких готовых виджетов не было, все делали сами — что в QML делается очень быстро. Графическим редактором не пользовались, все писалось в ручную в VS2008. Тогда QML еще не был частью Qt а шел как Qt-Solution со скромной документацией и наличием багов. Не смотря на это проэкт получился достаточно успешным.
Как это выглядит, можно тут посмотреть: http://www.option.com/en/products/products/connection-manager-solutions/ucanconnect/
E>Здравствуйте, jet_on, Вы писали:
_>>Я участвовал в проэкте где QML очень даже успешно применялся. У фирмы куча клиентов, которым надо "свой" UI.
E>Тогда к вам вопрос — а есть какие-нить готовые наборы кнопок, менюшек и т.д. — что то типа того, как есть во флеше? Или вы все сами делали?
E>И кстати правильно я понял, что поддержка визуального редактирования появится только в 2.1 креаторе?
Здравствуйте, enji, Вы писали:
E>Здравствуйте, jet_on, Вы писали:
_>>Я участвовал в проэкте где QML очень даже успешно применялся. У фирмы куча клиентов, которым надо "свой" UI.
E>Тогда к вам вопрос — а есть какие-нить готовые наборы кнопок, менюшек и т.д. — что то типа того, как есть во флеше?
Здравствуйте, enji, Вы писали:
E>И кстати правильно я понял, что поддержка визуального редактирования появится только в 2.1 креаторе?
В 2.1 появятся зачатки визуального редатирования.
Бета 2.1 уже доступна, можете глянуть — вроде бы изменений значительных не будет в релизе.
Просто возможности QML очень обширные, пока далеко не все поддерживается.
Но ничего, доделают, Qt — это вроде как единственное у Нокии, что развивается более-менее удачно.
Имхо, там есть еще один серьезный плюс. Qt Quick позволяет весь UI и даже часть логики (javascript) держать в ресурсах (или файлах на диске\сервере) в текстовых файлах. Плюс, менять или редактировать их в runtime. Это пригодится:
а) При кастомизации (скины = полная замена UI + частично, логики).
б) При портировании. Особенно, между мобильными платформами и десктопными, где разница в UI максимально велика.