Comments 27
Было бы очень хорошо и правильно пример изображения этого самого интерфейса выложить, чтобы людям читающим статью не приходилось скачивать 44 мегабайта проекта.
Типа, «я ходил в такой-то ресторан, было вкусно».
А если статья о вашем конечном продукте, то смените название.
сравнительно небольшим объемом кода.
На php/css подобную выборку из базы я думаю можно уложиться в 3-4 килобайта текста
У вас какой объем?
И что такое «Upload to file»?
PHP нет, потому что нужен сервер для его отработки.
Небольшое замечание: Для PHP не нужен сервер. Для него нужен бинарник с интерпретатором, точно так же, как и Java.
Подождав пару часов и скоротав время за партией в Age of Wonders, у нас в руках оказалась полная база со всей необходимой информацией.
Вопиющее несогласование, надо либо «После пары часов за партией ...» или "… мы получили полную базу ...".
Увидев заголовок, подумал, что будет что-то обстоятельное, с описанием подходов работы со сложно структурированными данными и написанием красивого гуя, а тут
я ходил в такой-то ресторан, было вкусно
Низачет
Так же интересно почему выбрали провязку с c++ через setContextProperty а не qmlRegisterType?
P.S. Спасибо, что посмотрели код. setContextProperty использовали вместо qmlRegisterType по той причине, что модель в нашем случае не является тиражируемой сущностью, а единичным объектом к которому нужно получить доступ из кода на qml. Так что mobyGamesModel это просто связующее звено между моделью на С++ и кодом на java script.
Почему вы думаете что этой статье место на хабре? (честно говоря из-за подобных статей хабр всё больше и больше становится похожим на помойку. Хабр это не площадка для блога)
Хабр это не площадка для блога)
Хм… А для чего, если не для блога?
А вообще я намекал на то, что термин «блог» слишком размытый и означает как и полноценные труды, так и сообщения в виде «твиттер-заметок», где второе поощрается крайне редко.
Я полагал, что хабр это место где разработчики (и другие люди связанные с разработкой ) могут обмениваться опытом и мнениями. Пока я человек новый и пробую себя в различных жанрах. Этот часть моего обучения. Вы можете указать какого рода бы статьи Вам хотелось видеть — это будет ценно для меня. Критика мало конструктивная.
Хорошо. Я понял. Никогда не поздно исправиться, поэтому давайте обсудим это сейчас. Вне всякого сомнения, эта заметка подобна короткому сообщению или твиту и смысл её, как отмечено в комментариях "qml позволяет разрабатывать интерфейс очень быстро, qml рулит", поэтому возможно её стоит переименовать в "qml: могущество и простота. Часть 1-ая. Смысловая", а все технические подробности продолжить в статье "qml: могущество и простота. Часть 2-ая. Техническая". Но пока ограничимся этим комментарием.
- Почему сделали такой выбор? Одним из наиболее значимых факторов в выборе того или иного инструмента является полнота знания — умение им пользоваться. Особенно важен этот фактор когда мы говорим о скоростных характеристиках разработки. Другой момент, что в qt вшит мощный механизм model/view, который я не знаю как можно было бы реализовать при помощи связки php+html/css/js или что тоже python+html/css/js, о которых говорилось в комментариях выше. Возможно постраничный вывод? Но зачем? В противном случае все перенесется в код на js + jquery (или подобные технологии). Java в этом смысле обладают с qt похожими возможностями, но ввиду того, что с java знаком чуть хуже выбор склонился в сторону qt.
- С какими сложностями столкнулись? Ввиду того что задача была понятна, а инструменты хорошо известны трудностей практически не возникло. За исключением пожалуй совета придерживаться более четной нотации в именовании объектов и переменных в коде на qml (js), поскольку неакуратность в этом отношении может приводить к непредсказуемым результатам.
- Почему приняли именно такие решения в процессе разработки? Поскольку в качестве источника данных выбрали базу данных, использование model/view было естественным продолжением этого решения, а благодаря мощной поддержке моделей в коде на qml, код отвечающий за интерфейс оказался очень компактным, практически таким же как если бы мы определяли шаблон для генерации html страницы.
qml: могущество и простота