metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2013-03-24 10:06 pm

Qt

Как известно, ситуация с разработкой десктопного пользовательского интерфейса как была печальной, так и осталась.

Дельфи умер, потому что паскаль, гопнет умирает, потому что его заполонили индусы и wpf, все внимание хипстеров от программирования привлечено к веб-интерфейсам на js, а олдскульные гуру ненавидят пользовательский интерфейс и делают только бэк-енды и бизнес-логику.

Из условно-пригодного осталось Qt, но что будет с ним после того, как его купила нокиа, а затем продала дигии - неясно.
Но таки альтернативы все равно нет, решил попытаться сделать прототип софтины, аналогичной той, что ранее сделана на дельфи и на гопнете (более-менее универсальный опердень-клиент, использующий сгенерированные кодогенератором метаданные для GUI и взаимодействия с бэк-ендом в виде БД или RESTful апи к серверу приложений ).
Пока идет туговато, разные типичные вещи, типа "грид с данными", которые в дельфи сделаны идеально, в гопнете как-то "так", тут приходится пока мудрить вручную, изучая, как это сделано в стандартных классах и примерах.

[identity profile] bydlorus.livejournal.com 2013-03-24 07:11 pm (UTC)(link)
А что, к Qt сделали биндинги на кложуре?

[identity profile] metaclass.livejournal.com 2013-03-24 07:19 pm (UTC)(link)
Нет, я ж на крестиках пишу.

Не могу избавится от ощущения тормозов и некачественности, когда пользуюсь GUI или на жабе или на дотнете. Вроде ничего такого быть не должно, все вроде бы там хорошо, но какие-то мелкие неадекватности, действуют на нервы.

[identity profile] sergiej.livejournal.com 2013-03-24 07:25 pm (UTC)(link)
Так а почему не Qt?

[identity profile] vp.livejournal.com 2013-03-24 07:34 pm (UTC)(link)
Я думаю, что текущее состояние дел в Qt заморозится, то есть сильного развития не будет.

А по поводу генерации - это единственный способ на Qt делать какие-то гуи вещи с дата гридами, ибо иначе там сложно.

[identity profile] metaclass.livejournal.com 2013-03-24 07:35 pm (UTC)(link)
Ну я на нем и делаю сейчас.
Что-то вещей хотя бы уровня дельфей 10-летней давности нет в принципе.

[identity profile] nicka-startcev.livejournal.com 2013-03-24 07:37 pm (UTC)(link)
а что хужее, Qt или gtk?

[identity profile] metaclass.livejournal.com 2013-03-24 07:39 pm (UTC)(link)
Я так понимаю, надо сделать модель с встроенным хранилищем для метаданных.
И грузить эти метаданные из сгенерированного конфига (типа того что мы в дотнет-версии используем), чтобы не генерировать еще и С++ код.

У них там есть QSqlQueryModel и QRelationTableModel но это 1% от нужной функциональности.

[identity profile] metaclass.livejournal.com 2013-03-24 07:39 pm (UTC)(link)
Софт под винду лучше делать на Qt, по крайней мере это есть из коробки.

[identity profile] gds.livejournal.com 2013-03-24 07:43 pm (UTC)(link)
в каком смысле "из коробки"?

[identity profile] justy-tylor.livejournal.com 2013-03-24 07:47 pm (UTC)(link)
Из нативных решений wxWidgets гуманнее. Там нет тыщи классов QAllYouEverWanted, но нет и последующих разочарований.

[identity profile] lord-baskervil.livejournal.com 2013-03-24 07:56 pm (UTC)(link)
Ну да. Идеология кутей заключается в базовом наборе необходимых виджетов, а остальное делается легким мановением наследования. Няшная штука. Кумл тоже оказывается вполне ок, хоть и не без изъянов.

[identity profile] lord-baskervil.livejournal.com 2013-03-24 07:57 pm (UTC)(link)
Чем лучше?
inb4 чем Qt

[identity profile] lord-baskervil.livejournal.com 2013-03-24 07:58 pm (UTC)(link)
Наверное, все же софт под венду лучше на дотнетах всяких писать, как мне кажется.

[identity profile] vp.livejournal.com 2013-03-24 07:58 pm (UTC)(link)
Это все вырождается в человеко-годы, если нужно сделать что-то более-менее привычное и серьезноею

[identity profile] lord-baskervil.livejournal.com 2013-03-24 08:00 pm (UTC)(link)
Не выражается. Потому что сделать кастомный интерфейс довольно просто. В худшем варианте - нарисовать его в paint ()

[identity profile] hshhhhh.livejournal.com 2013-03-24 08:01 pm (UTC)(link)
вазьмите gtk и страдайте как настоящий мужик уже.

[identity profile] potan.livejournal.com 2013-03-24 08:01 pm (UTC)(link)
Энтерпразный вариант - опердень ввиде плугина к эклипсу. Можно и на Clojure...

[identity profile] hshhhhh.livejournal.com 2013-03-24 08:01 pm (UTC)(link)
Недавно ж совсем (в течении месяца) релиз был

[identity profile] metaclass.livejournal.com 2013-03-24 08:04 pm (UTC)(link)
Ну - инсталлировал, создал проект, собрал, запустил. На другой комп деплоится копированием папки.

[identity profile] metaclass.livejournal.com 2013-03-24 08:06 pm (UTC)(link)
Возможно. Но меня индусятина внутренняя выбешивает невыносимо.
"Открой ilspy и возненавидь человечество".

[identity profile] metaclass.livejournal.com 2013-03-24 08:08 pm (UTC)(link)
Видел я такое, да. Rich Client Platform.
Не знаю, не люблю подстраиваться под чужие фреймворки.

[identity profile] freetiger.livejournal.com 2013-03-24 08:10 pm (UTC)(link)
Чем билдер не устраивает?

[identity profile] lord-baskervil.livejournal.com 2013-03-24 08:15 pm (UTC)(link)
>текущее состояние дел в Qt заморозится,
Эм, что? Что значит заморозится и, что значит текущее состояние дел?

[identity profile] sergiej.livejournal.com 2013-03-24 08:16 pm (UTC)(link)
хм. У нас индусы с улицы на жабе делают уровень дельфей десятилетней давности. Но спорить не буду, я дельфей не знаю.

[identity profile] lord-baskervil.livejournal.com 2013-03-24 08:18 pm (UTC)(link)
В кутях внутри тоже куча проблем. Но на мелких проектах с ними редко сталкиваешься.

Page 1 of 4