Qt

Mar. 24th, 2013 10:06 pm
metaclass: (Default)
[personal profile] metaclass
Как известно, ситуация с разработкой десктопного пользовательского интерфейса как была печальной, так и осталась.

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

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

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

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

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

(no subject)

From: [identity profile] permea-kra.livejournal.com - Date: 2013-03-24 08:33 pm (UTC) - Expand

(no subject)

From: [identity profile] fas-tm.livejournal.com - Date: 2013-03-24 08:55 pm (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2013-03-24 10:27 pm (UTC) - Expand

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

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

(no subject)

From: [identity profile] lord-baskervil.livejournal.com - Date: 2013-03-24 07:56 pm (UTC) - Expand

(no subject)

From: [identity profile] vp.livejournal.com - Date: 2013-03-24 07:58 pm (UTC) - Expand

(no subject)

From: [identity profile] lord-baskervil.livejournal.com - Date: 2013-03-24 08:00 pm (UTC) - Expand

(no subject)

From: [identity profile] fas-tm.livejournal.com - Date: 2013-03-24 08:21 pm (UTC) - Expand

(no subject)

From: [identity profile] vp.livejournal.com - Date: 2013-03-24 08:29 pm (UTC) - Expand

(no subject)

From: [identity profile] fas-tm.livejournal.com - Date: 2013-03-24 08:37 pm (UTC) - Expand

(no subject)

From: [identity profile] lord-baskervil.livejournal.com - Date: 2013-03-24 08:39 pm (UTC) - Expand

(no subject)

From: [identity profile] vp.livejournal.com - Date: 2013-03-24 08:41 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2013-03-24 08:29 pm (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2013-03-24 10:29 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2013-03-25 06:43 am (UTC) - Expand

(no subject)

From: [identity profile] sergiej.livejournal.com - Date: 2013-03-24 08:16 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2013-03-24 08:26 pm (UTC) - Expand

(no subject)

From: [identity profile] sergiej.livejournal.com - Date: 2013-03-24 08:29 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2013-03-24 08:51 pm (UTC) - Expand

(no subject)

From: [identity profile] gineer.livejournal.com - Date: 2013-03-25 09:46 am (UTC) - Expand

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

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

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

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

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

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

(no subject)

From: [identity profile] vp.livejournal.com - Date: 2013-03-24 08:28 pm (UTC) - Expand

(no subject)

From: [identity profile] lord-baskervil.livejournal.com - Date: 2013-03-24 08:31 pm (UTC) - Expand

(no subject)

From: [identity profile] vp.livejournal.com - Date: 2013-03-24 08:39 pm (UTC) - Expand

(no subject)

From: [identity profile] fas-tm.livejournal.com - Date: 2013-03-24 08:52 pm (UTC) - Expand

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

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

(no subject)

From: [identity profile] gds.livejournal.com - Date: 2013-03-24 07:43 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2013-03-24 08:04 pm (UTC) - Expand

(no subject)

From: [identity profile] lord-baskervil.livejournal.com - Date: 2013-03-24 07:58 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2013-03-24 08:06 pm (UTC) - Expand

(no subject)

From: [identity profile] lord-baskervil.livejournal.com - Date: 2013-03-24 08:18 pm (UTC) - Expand

Date: 2013-03-25 03:09 am (UTC)
From: [identity profile] norguhtar.livejournal.com
gtk хуже. С документацией пиздец и с точки зрения целостности страашный.

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

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

(no subject)

From: [identity profile] justy-tylor.livejournal.com - Date: 2013-03-24 08:50 pm (UTC) - Expand

(no subject)

From: [identity profile] norguhtar.livejournal.com - Date: 2013-03-25 03:11 am (UTC) - Expand

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

Date: 2013-03-25 05:17 am (UTC)
From: [identity profile] thedeemon.livejournal.com
tcl/tk еще можно, то-то все будут рады :)

(no subject)

From: [identity profile] nivanych.livejournal.com - Date: 2013-03-25 07:00 pm (UTC) - Expand

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

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

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

Date: 2013-03-24 08:25 pm (UTC)
From: [identity profile] fas-tm.livejournal.com
все билдеры хороши только для простых форм.
Я практически не использую. Мне сейчас намного проще вручную нарисовать лэйауты и покидать в них виджеты. В этом случае все это дело более управляемое. мало того просто проще генерировать формы из каких то данных или моделей.

(no subject)

From: [identity profile] vp.livejournal.com - Date: 2013-03-24 08:30 pm (UTC) - Expand

(no subject)

From: [identity profile] fas-tm.livejournal.com - Date: 2013-03-24 08:45 pm (UTC) - Expand

(no subject)

From: [identity profile] freetiger.livejournal.com - Date: 2013-03-24 08:40 pm (UTC) - Expand

Date: 2013-03-24 08:29 pm (UTC)
From: [identity profile] chemodax.livejournal.com
Я чего-то в последнее время полюбил старый-добрый WTL. Хотя конечно с гридом там наверное намучаешься, но мне к счастью не надо :)
(deleted comment)

Date: 2013-03-25 05:27 am (UTC)
From: [identity profile] thedeemon.livejournal.com
Совсем недавно видел такое:

"Выкидываем Delphi. Попробовали XE3 64 бита - не кампелирует вообще. Два варианта, или падает компилятор, или получается незапускающийся файл. Жалко, конечно, сколько лет, ёлки, но x64 нужно. Будем переписывать, месяца четыре, судя по всему."
http://sharowarsheg.livejournal.com/140523.html

Date: 2013-03-24 10:26 pm (UTC)
From: [identity profile] maxdz.livejournal.com
>Но таки альтернативы все равно нет

Джава или .NET/C#? Чем не альтернатива?

Date: 2013-03-25 06:42 am (UTC)
From: [identity profile] metaclass.livejournal.com
Немного раздражает. Использовать можно, но не получается сделать идеально без каких-то излишних усилий.

Date: 2013-03-24 10:58 pm (UTC)
From: [identity profile] tzirechnoy.livejournal.com
Дэльфи умер -- потому, что единственный вменяемый дизайнер свалил где-то между первой и второй версией, а остальные быдлокодеры дажэ работающий place manager написать ниасилили.
Замечу, что прикрутить к нему C++ -- они как раз вполне смогли. C++ в дэльфях жывёт большэ, чем по-видимому большынство современных программистов -- программируют.

Гопнет умирает потому, что MS протухла сама по себе, у всех команд внутри NIH во все дыры ещё большэ, чем в OS-community, бюрократия переплюнула саму IBM, а на того самого дизайнера не кладёт болт разве что его секретарша (за отсутствием болта).

Кстати, альтэрнатива -- wx.

Но это всё, по большому счёту, дохлое -- поскольку web и всё такое.

Date: 2013-03-25 01:04 am (UTC)
From: [identity profile] fraks-nsk.livejournal.com
Сижу на Delphi7 и у меня ничего не умерло ;)

Date: 2013-03-25 04:20 am (UTC)
From: [identity profile] denisioru.livejournal.com
в .net чуть более чем дофига разного рода сторонних фреймворков для гуя, никто не заставляет писать с помощью DataGrid. Используйте telerik или devexpress, они очень ок.

Date: 2013-03-25 04:33 am (UTC)
From: [identity profile] berezovsky.livejournal.com
инфраджистикс ещё когда-то был

(no subject)

From: [identity profile] denisioru.livejournal.com - Date: 2013-03-25 04:34 am (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2013-03-25 06:45 am (UTC) - Expand

(no subject)

From: [identity profile] maxdz.livejournal.com - Date: 2013-03-25 06:49 am (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2013-03-25 07:17 am (UTC) - Expand

(no subject)

From: [identity profile] teewoon.livejournal.com - Date: 2013-03-25 08:10 pm (UTC) - Expand

(no subject)

From: (Anonymous) - Date: 2013-03-25 07:04 am (UTC) - Expand

Date: 2013-03-25 07:01 am (UTC)
From: [identity profile] raydac.livejournal.com
UI можно на HTML в принципе делать, юзая как UI среду просто броузеры

Date: 2013-03-25 08:41 am (UTC)
From: [identity profile] fas-tm.livejournal.com
в данном случае нельзя категорически. сложные формы не сделаешь на всяких html UI.
во вторых я категорически против этого гейства:
- html язык разметки текста. к rich-gui не приспособлен никак. то что есть сегодня - натягивание презерватива на кактус.
- таскать за собой тот же webkit или что еще хуже использовать системный движок браузера совсем не улыбается.
- будет тормозной и кривой способ взаимождействия основного кода с кодом gui.

Уж лучше .NET, честно.
Edited Date: 2013-03-25 08:42 am (UTC)

(no subject)

From: [identity profile] raydac.livejournal.com - Date: 2013-03-25 09:52 am (UTC) - Expand

Date: 2013-03-25 12:00 pm (UTC)
From: [identity profile] vit-r.livejournal.com
Всё хожу около. Если нужно, или Tk, или веб через localhost

Date: 2013-03-25 04:37 pm (UTC)
From: [identity profile] ext_1684112 (from livejournal.com)
Что скажете про Swing?

Date: 2013-03-25 04:48 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Сначала Qt, я не потерял еще надежды сделать нативно компилируемое десктопное приложение :)

(no subject)

From: [identity profile] ext_1684112 - Date: 2013-03-25 04:53 pm (UTC) - Expand

(no subject)

From: [identity profile] metaclass.livejournal.com - Date: 2013-03-25 05:48 pm (UTC) - Expand

(no subject)

From: [identity profile] permea-kra.livejournal.com - Date: 2013-03-25 05:02 pm (UTC) - Expand

(no subject)

From: [identity profile] fas-tm.livejournal.com - Date: 2013-03-25 05:26 pm (UTC) - Expand

(no subject)

From: [identity profile] permea-kra.livejournal.com - Date: 2013-03-26 01:33 pm (UTC) - Expand

(no subject)

From: [identity profile] fas-tm.livejournal.com - Date: 2013-03-26 01:45 pm (UTC) - Expand

(no subject)

From: [identity profile] permea-kra.livejournal.com - Date: 2013-03-26 02:27 pm (UTC) - Expand

(no subject)

From: [identity profile] psilogic.livejournal.com - Date: 2013-03-28 06:25 am (UTC) - Expand

Date: 2013-03-27 09:25 pm (UTC)
From: [identity profile] psilogic.livejournal.com
я был вынужден отнаследовать от QAbstractItemModel и написать свою модель для дерева, стандартная страшно тормозила на обычной отрисовке (10 колонок, часть ячеек с пиктограммами)

Date: 2013-03-27 09:31 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Я так и буду делать, у меня специфические требования к внутренностям модели и структуре данных, которую она отражает.

(no subject)

From: [identity profile] psilogic.livejournal.com - Date: 2013-03-27 09:41 pm (UTC) - Expand

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 25th, 2025 09:06 pm
Powered by Dreamwidth Studios