Qt

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

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

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

Date: 2013-03-25 05:26 pm (UTC)
From: [identity profile] fas-tm.livejournal.com
то что прийдется изобретать огромное количество велосипедов.
простейший пример. инициализация плагинов, вытаскивание системных путей для временных файлов чтение конфига все относительно текущего положения приложения итд. Ладно, у меня они просто написанны давно в виде хелепров типа GetModuleFileName* + кучка методов для вытаскивания расширения/имени файла/абсолютного пути. Я просто сейчас не осознаю этого уже, но поверьте на это было затрачено много времени.
в QtCore мы имеем это сразу из коробки к примеру

QSettings config(QDir::toNativeSeparators(qApp->applicationDirPath() +
QDir::separator() + "appcfg.ini"),
QSettings::IniFormat);

Я реально уже не понимаю как без этого вообще можно жить. И все это сразу в unicode.
А когда вижу приложения которые написаны без учета того что оно может быть запущенно из под другого пользователя и не может найти свой конфиг, мне очень хочеться взять что то крупнокалиберное и поиграть в дум.



Edited Date: 2013-03-25 05:26 pm (UTC)

Date: 2013-03-26 01:33 pm (UTC)
From: [identity profile] permea-kra.livejournal.com
Мне неочевидно, что ради таких (достаточно простых) вещей нужно тащить достаточно толстый фреймворк с ограничениями на коммерческую разработку, да еще и прибитый гвоздями к плюсам с их проблемами и при этом пользующий свой препроцессор.

Впрочем, gtk в этом плане ничем не лучше.
Надо собраться с духом и попробовать пописать на ghc/winapi+opengl

Date: 2013-03-26 01:45 pm (UTC)
From: [identity profile] fas-tm.livejournal.com
да в любом случае надо чтото тащить.
"ограничениями на коммерческую разработку" - это не так. нет никаких особых ограничений.
"прибитый гвоздями к плюсам" - это да. но у меня специфика. в любом случае мне необходим нативный код и большинство 3dparty это С/С++ (работа с видео/аудио/кодеки).
Разумных вариантов не так много.

Date: 2013-03-26 02:27 pm (UTC)
From: [identity profile] permea-kra.livejournal.com
>нет никаких особых ограничений
Это когда код под BSD.

> (работа с видео/аудио/кодеки)
Это осложняет ситуацию, согласен.

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. 20th, 2025 02:46 am
Powered by Dreamwidth Studios