Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Чем вы пользуетесь? какими из библиотек? 
:(
    Опции темы
 
Какими графическими кроссплатформенными библиотеками вы пользуетесь?
QT [ 240 ]  [68.77%]
GTK [ 35 ]  [10.03%]
wxWidgets [ 53 ]  [15.19%]
другой [ 21 ]  [6.02%]
Всего проголосовавших: 302
В этом опросе возможны множественные ответы
Гости не могут голосовать 
JackYF
Дата 22.11.2007, 20:29 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 7
Всего: 162



Ставим отметки, кто чем пользуется.

Если выбираете вариант "другой", не поленитесь в сообщении указать какую.
Комментарии по теме приветствуются.

Модератор: пожалуйста, никаких тематических вопросов в этой теме.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
archimed7592
Дата 22.11.2007, 20:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Архимед
****


Профиль
Группа: Завсегдатай
Сообщений: 2531
Регистрация: 12.6.2004
Где: Moscow

Репутация: 11
Всего: 93




M
JackYF
Отредактировал. Имелись в виду графические библиотеки.

JackYF, а что вариантов ответа так мало? smile
Разве этим списком ограничивается набор кроссплатформенных библиотек?
А как же icu, boost, libcurl, xerces+xalan(это хотя бы те, что покрывают некотрые неГУЁвые части Qt, причём, как правило, ф-ционал предоставляют лучший, чем Qt)?



Это сообщение отредактировал(а) archimed7592 - 24.11.2007, 01:43


--------------------
If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.
© George Bernard Shaw
PM Jabber   Вверх
nickless
Дата 22.11.2007, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Гентозавр
****


Профиль
Группа: Участник Клуба
Сообщений: 2976
Регистрация: 29.8.2005
Где: Germany

Репутация: 13
Всего: 181



Может тогда переделать вопрос на "Какими графическими кроссплаттформенными библиотеками вы пользуетесь"?

По сабжу ответил Qt


--------------------
user posted image

Real men don't use backups, they post their stuff on a public ftp server and let the rest of the world make copies
- Linus Torvalds
PM MAIL   Вверх
Lazin
Дата 29.11.2007, 11:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 2
Всего: 154



ответил wx, хотя это уже в прошлом))
PM MAIL Skype GTalk   Вверх
powerfox
Дата 10.1.2008, 01:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 4
Всего: 97



Qt (на уровне "с доками накалякаем"). Последний месяц (и в будущем с января) пришлось углубиться в gtk2 - полный Ацтой по сравнению с Qt (по функциональности, юзабилити (ООП рулит), документации (по Qt4 она в разу лучше) ).


--------------------
user posted image
PM WWW   Вверх
Zaff
Дата 13.1.2008, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 13.1.2008

Репутация: нет
Всего: нет



Qt мне конечно очень нравится, как и Windows и все остальное коммерческое. Но я не настолько богат, чтобы использовать ее в своих проектах. Поэтому приходится обходиться либами попроще: 
  • wxWidgets (очень удобная, гибкая, но если использовать GTK - возможны тормоза, с x11 все ок; отлично документирована), 
  • fox - очень нравится скорость работы, но плохо документирована и удобство не на высоте.

PM MAIL   Вверх
nickless
Дата 13.1.2008, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Гентозавр
****


Профиль
Группа: Участник Клуба
Сообщений: 2976
Регистрация: 29.8.2005
Где: Germany

Репутация: 13
Всего: 181



Цитата(Zaff @  13.1.2008,  14:23 Найти цитируемый пост)
и все остальное коммерческое

У Qt двойная лицензия - для коммерческих проектов коммерческая, для остальных - GPL2.


--------------------
user posted image

Real men don't use backups, they post their stuff on a public ftp server and let the rest of the world make copies
- Linus Torvalds
PM MAIL   Вверх
vadiml
Дата 14.1.2008, 23:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 310
Регистрация: 27.7.2007

Репутация: нет
Всего: 7



У меня сейчас основная Qt
а так еще Tk и Gtk
PM MAIL Jabber   Вверх
LazyVoid
Дата 4.3.2008, 01:38 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 17.2.2008
Где: Ekaterinburg

Репутация: нет
Всего: нет



Голосовал за Qt.
Уже сказано о удобстве использования, великолепной документации и т.д. и т.п., от себя же хочу добавить что как только начал с ней знакомиться она просто прикипела как родная и на другие даже смотреть неохота.
Раньше пробовал изучить Tk, но как то не пошло, а здесь получаешь удовольствие от ее изучения и применения, даже не верится что все так просто. (-:
З.Ы. не реклама, а исключительно ИМХО (-;
PM MAIL ICQ GTalk Jabber   Вверх
anatox91
Дата 2.4.2008, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


программист-самоучка
**


Профиль
Группа: Участник
Сообщений: 699
Регистрация: 12.1.2008
Где: ++Украина.Крым++

Репутация: нет
Всего: 13



Цитата

Голосовал за Qt.
Уже сказано о удобстве использования, великолепной документации и т.д. и т.п., от себя же хочу добавить что как только начал с ней знакомиться она просто прикипела как родная и на другие даже смотреть неохота.

+1000000000000


--------------------

The code is the design ©

Sony VAIO VGN-FW480J

user posted image
PM MAIL ICQ   Вверх
Maka6er
  Дата 31.5.2008, 20:01 (ссылка) |    (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 150
Регистрация: 27.2.2007
Где: Киев

Репутация: нет
Всего: 3



Изучаю QT. До этого программы с графическим интерфейсом писал только с использованием windows forms. Разница конечно...нет слов. QT - рулит smile 
PM MAIL   Вверх
anatox91
Дата 7.6.2008, 12:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


программист-самоучка
**


Профиль
Группа: Участник
Сообщений: 699
Регистрация: 12.1.2008
Где: ++Украина.Крым++

Репутация: нет
Всего: 13



мдаа... преимущество Qt в голосовании подавляющее  smile 
что, впрочем неудивительно  smile 

Это сообщение отредактировал(а) anatox91 - 7.6.2008, 12:59


--------------------

The code is the design ©

Sony VAIO VGN-FW480J

user posted image
PM MAIL ICQ   Вверх
byNet
Дата 17.11.2008, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 14.11.2005
Где: Беларусь

Репутация: нет
Всего: нет



+1 qt. На данном этапе изучаю. Библиотека сделана на ура! smile  smile  smile 
PM MAIL   Вверх
JavaCraft
Дата 19.11.2008, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 8.2.2007

Репутация: нет
Всего: 1



А я против, как из принципа(против массы и лукавых маркетологов), так и по сути. wxWidgets ничем QT не уступает. Юзал обе. Сейчас делаю на wxWidgets довольно тяжелый проект с обработкой растровой графики и видеопотоков, векторной графикой, полноценным GUI, взаимодействием с внешними устройствами и БД. Никаких преимуществ QT над wxWidgets не вижу.
PM MAIL   Вверх
SABROG
Дата 19.11.2008, 22:56 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Hacker
****


Профиль
Группа: Завсегдатай
Сообщений: 2481
Регистрация: 18.9.2006

Репутация: 81
Всего: 91



Цитата(JavaCraft @  19.11.2008,  15:07 Найти цитируемый пост)
Никаких преимуществ QT над wxWidgets не вижу. 

Цитата провоцирующая на холивар smile Если проводить раскопки, то минусы и плюсы можно найти везде. 

Например мне нравится использовать windows для игр и потому, что для него есть драйвера почти для всех устройств. Он создает проблемы по ходу работы, но подкупает тем, что при его установке проблем обычно не возникает никаких.

Мне нравится линукс за то, что под него почти нет вирусов, он как конструктор лего, бесплатен и софт под него бесплатный, забудем про кряки и серийные ключи, может нормально работать без графического интерфейса, что уже хорошо для серверных станций, но вот с оборудованием у него всегда были проблемы.

Мне нравится intel компилятор за хорошую оптимизацию кода, мне нравится компилятор microsoft за скорость выполнения кода, мне нравится gcc за кроссплатформенность и придерживание стандартов.

Мне нравится ассемблер за то, что он не ограничивает меня ни в чем, с ним я чувствую себя свободно. С ним для меня есть только один тип данных - байт, остальное - вариации. Это то, что позволяет заглянуть внутрь любой программы независимо от языка программирования.

и т.д., можно продолжать долго.

А Qt я выбрал не потому, что он лучше wxWidgets, просто я еще не чувствую, что Qt я знаю хотябы на 70%, чтобы изучать другую библиотеку и начать проводить параллели. Но что-то мне подсказывает, что 90% классов, которые есть в Qt я найду в любой другой библиотеке, хотябы потому, что конкуренция ведет к стиранию разницы. Т.ч. перескочить с одной на другую врятли будет большой проблемой.


--------------------
Национальная группа Russian Federation на QtCentre.
PM MAIL   Вверх
andrew_121
Дата 16.2.2009, 00:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 11
Всего: 33



SABROG, Вот задвинул!
+1


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
Arch1S
Дата 14.3.2009, 19:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 14.1.2008
Где: Беларусь, Гомель

Репутация: нет
Всего: 3



приходится работать с QT под KDE, а GTK под Gnome, но мне больше нравится конечно Qt, из-за документации и красивого ООП + хоть некоторые книги есть на русском
PM MAIL   Вверх
GavriKos
Дата 24.7.2009, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 8.8.2007
Где: Донецк, Украина

Репутация: нет
Всего: 1



Долгое время работал с мфс. Сейчас решил перейти на бесплатную библиотеку. Выбор пал на виджеты (причина банальна - есть кому помочь с ними). Что понравилось:

1) просто огромное количесвто паралеллей с хорошими вещами мфс. То, что в мфс было неудобно - исправлено на лучшие вещи. 
2) следствие из первого - достаточно быстро можно перенести программу с мфс на кросплатформенность
3) Хорошая интегрируемость. Это я про отдельный редактор дилогов.

Не понравилось:
1) Отсутствие литературы. Ну или ее настолько мало что просто не достать
2) Отсутствие документации по сборке и функционалу "в коробке" (пришлось все выкачивать отдельно)

В целом для меня плюсы перевесили минусы ))
--------------------
Донецкая группа IT - присоединяемся
PM MAIL ICQ   Вверх
SABROG
Дата 24.7.2009, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Hacker
****


Профиль
Группа: Завсегдатай
Сообщений: 2481
Регистрация: 18.9.2006

Репутация: 81
Всего: 91



Цитата(GavriKos @  24.7.2009,  15:00 Найти цитируемый пост)
Сейчас решил перейти на бесплатную библиотеку.

На какую, если не секрет?


--------------------
Национальная группа Russian Federation на QtCentre.
PM MAIL   Вверх
ufna
Дата 24.7.2009, 18:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 75
Регистрация: 4.4.2005
Где: Курган/СПб

Репутация: нет
Всего: 0



судя по посту выше, wxWidgets
PM MAIL WWW Skype   Вверх
KaraKum
Дата 21.4.2010, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 640
Регистрация: 3.12.2007

Репутация: нет
Всего: 1



Меня сильно удивил в результате опроса тот факт, что wxWidgets популярнее чем Gtk+ - так как второй является основой Gnome, а он, в свою очередь, единственный конкурент KDE (тобеж Qt), да и вообще сообщество Gnome огромно (самый полпулярный дистрибутив Linux - Ubuntu - устанавливается с Gnome), а вот о wxWidgets ничего не слышно...
PM MAIL WWW   Вверх
Дшпыук
Дата 14.5.2010, 12:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Не сплю
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 4.3.2010
Где: Омск

Репутация: нет
Всего: 1



Может быть это потому что не все программисты линуксоиды(и наоборот)?.. Да и вообще выбирать библиотеку по ДЕ я бы не стал, ибо сам юзаю гном, а пробую изучать Qt, и не потому что мне КДЕ нравится, а потму что для меня Qt удобнее (сигналы и слоты - они прекрасны), Gtk например сразу как то не пошел) А теперь совсем не хочется пересаживаться на что то другое) Так и с виджетами, кто то попробовал - понравилось, и просто не захотел переходить на что то иное.
PM MAIL ICQ   Вверх
boostcoder
Дата 14.5.2010, 12:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 4
Всего: 110



Цитата(Дшпыук @  14.5.2010,  12:19 Найти цитируемый пост)
Может быть это потому что не все программисты линуксоиды(и наоборот)?

нет, не в этом дело.
я использую и пишу под линукс. видавс видел очень давно. GTK не использую ибо оно Си. Qt использую чтоб какой-то гуй быстро накодить. но технически, wxWidgets нравится больше.
еще есть прекрасная либа для создания гуя - egui. жаль что только под венду :(
PM WWW   Вверх
RedDigger
Дата 25.9.2010, 00:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 24.9.2010
Где: Москва

Репутация: нет
Всего: 1



Цитата

Цитата(Дшпыук @  14.5.2010,  12:19 Найти цитируемый пост)
Может быть это потому что не все программисты линуксоиды(и наоборот)?

нет, не в этом дело.
я использую и пишу под линукс. видавс видел очень давно. GTK не использую ибо оно Си. Qt использую чтоб какой-то гуй быстро накодить. но технически, wxWidgets нравится больше.
еще есть прекрасная либа для создания гуя - egui. жаль что только под венду :(


Работал на всех сдесь приведенных фреймворках.. мой выбор пал на Qt потому что я ярый приверженец С и С-подобных языков(в часиности С++)
мне на нем работать проще и проекты быстро поднимаются.. 

Сам Линуксоид. 
Ось - Gentoo Base System release 2.0.1
Компилятор - gcc version 4.3.4 (Gentoo 4.3.4 p1.0, pie-10.1.5)
Фреймворк - Qt: 4.6.2
ДМ - KDE Development Platform: 4.4.5 (KDE 4.4.5)
IDE - QtCreator - 1.3.1

А на счет вашего спора - могу сказать что он не имеет конца ибо вопрос из темы кому что нравится.. и можно до безконечности спорить чей язык мощнее или чья среда удобнее.. У всего есть плюсы и у всего есть минусы.. К примеру Пролог тоже очень полезный и малоиспользуемый язык но для написания экспертных систем - нет ничего лучше (опятьже ИМХО)
PM MAIL Skype   Вверх
GavriKos
Дата 8.3.2011, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 8.8.2007
Где: Донецк, Украина

Репутация: нет
Всего: 1



Цитата

А на счет вашего спора - могу сказать что он не имеет конца ибо вопрос из темы кому что нравится.. и можно до безконечности спорить чей язык мощнее или чья среда удобнее.. У всего есть плюсы и у всего есть минусы.. К примеру Пролог тоже очень полезный и малоиспользуемый язык но для написания экспертных систем - нет ничего лучше (опятьже ИМХО)


А никто особо и не спорит ;-)

Нашел для себя еще один плюс виджетов. Можно сидя под линухом спокойно собирать программы под винду. Не знаю, может в Qt такое тоже можно - не пробовал.
--------------------
Донецкая группа IT - присоединяемся
PM MAIL ICQ   Вверх
bsa
Дата 28.3.2011, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 24
Всего: 196



Цитата(GavriKos @  8.3.2011,  11:22 Найти цитируемый пост)
Нашел для себя еще один плюс виджетов. Можно сидя под линухом спокойно собирать программы под винду. Не знаю, может в Qt такое тоже можно - не пробовал. 

Это называется кросс-компиляция. Qt тоже можно настроить.
PM   Вверх
_GRIN_
Дата 28.3.2011, 12:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


одинокий падаван
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 18.11.2007
Где: Калуга

Репутация: 6
Всего: 7



Присоединяюсь, Qt пока ещё знаю плохо, что бы на другие глядеть - а свободного времени 0. Но в целом очень радует, особенно документация.


--------------------
Дорогу осилит идущий
PM MAIL Skype   Вверх
SolRus
  Дата 25.8.2011, 19:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 40
Регистрация: 6.8.2011

Репутация: нет
Всего: нет



не участвовал в опросе, так как не владею знанием не одним из виджетов, сейчас решил освоить кросплатформенный виджет для gui user posted image
qt не устроил ибо при статической линковке:
1. нужно платить
2. размер программы получается существенный
при динамической приходится тягаться с библиотеками... примерно также как давно было с net. framework - пришлось ставить библиотеку 2.0 которая тогда весила гдето метров 20 (это было еще до выхода vistы)

читаю описание WxWidgets в вики:
Цитата
Другая отличительная особенность — wxWidgets использует графические элементы интерфейса операционной системы. Многие фреймворки такие как Swing и Qt используют собственные графические элементы управления, снабжая их сменяемыми темами для каждой платформы. Напротив, wxWidgets использует родные графические элементы пользовательского интерфейса всюду где это возможно. В результате они не только выглядят как родные для операционной системы — они на самом деле родные
вот это хорошо, имхо. буду смотреть пока эту.

а gtk как работает - с ОС элементами или создает свои элементы?
чтот смотрю в опросе ответили 17 тел "другой", а в коментах помимо TK больше ничего не заметил.

ps: подскажите вот знаю что в win можно использовать windows region (непрямоугольные окна), а linux или macos тоже может так? и какие виджеты это поддерживают? в вики написано tk поддерживает, однако Последняя версия 8.5.7 (15 апреля 2009 года) - она того? user posted image
user posted image
PM MAIL Skype   Вверх
kemiisto
Дата 25.8.2011, 20:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 8
Всего: 160



Цитата(SolRus @  25.8.2011,  18:16 Найти цитируемый пост)
1. нужно платить

Это заявление не верно. Точнее, не совсем верно. Сто раз уже обсуждалось повторяться не буду.

Цитата(SolRus @  25.8.2011,  18:16 Найти цитируемый пост)
читаю описание WxWidgets в вики

Технические статьи из русскоязычной Педивикии цитировать при нулевой компетенции в вопросе крайне глупо. Почти всегда попадёте впросак. Приведённая цитата обсуждалась так же сотни раз. В настоящий момент времени всё, что там написано - бред.

Цитата(SolRus @  25.8.2011,  18:16 Найти цитируемый пост)
2. размер программы получается существенный

Существенный - это сколько, простите, в граммах?

Цитата(SolRus @  25.8.2011,  18:16 Найти цитируемый пост)
при динамической приходится тягаться с библиотеками...

Вот в который раз читаю и всё никак не пойму - что тягостного то?

Добавлено через 2 минуты и 27 секунд
Цитата(SolRus @  25.8.2011,  18:16 Найти цитируемый пост)
а gtk как работает - с ОС элементами или создает свои элементы?

Вот там точно свои.

Добавлено через 3 минуты и 13 секунд
Цитата(SolRus @  25.8.2011,  18:16 Найти цитируемый пост)
в вики написано tk поддерживает

Tk в 2011 можно использовать разве что для прототипирования.

Добавлено через 12 минут и 49 секунд
Цитата(SolRus @  25.8.2011,  18:16 Найти цитируемый пост)
чтот смотрю в опросе ответили 17 тел "другой", а в коментах помимо TK больше ничего не заметил.

Из более-менее живого и используемого есть ещё FLTK, FOX, Ultimate++.


--------------------
PM MAIL WWW GTalk Jabber   Вверх
SolRus
  Дата 25.8.2011, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 40
Регистрация: 6.8.2011

Репутация: нет
Всего: нет



а ну видимо я ошибся при GNU LGPL можно статически линковать... \\?
существенный ну в зависимости от функциональности. к примеру windjvu, mtorrent, virtualdub
заметь этим программам не нужно тягать в своем дистрибутиве к примеру библиотеку QtGui4.dll (почти 10 мб)

Цитата(kemiisto @ 25.8.2011,  20:53)
Технические статьи из русскоязычной Педивикии цитировать при нулевой компетенции в вопросе крайне глупо. Почти всегда попадёте впросак. Приведённая цитата обсуждалась так же сотни раз. В настоящий момент времени всё, что там написано - бред.

ну, эт... самое...) раз такой умный, может сам напишешь что там должно быть на твое усмотрение, я скажу спасибо и остальные пользователи рувики (хотя думаю тебя это не мотивирует)

ps: можно ли на qt написать программу которая по сути имеет лишь несколько графических элементов ( кнопка, комбобокс, таблица) размером <1 мбайт? < 100 кбайт? подразумевается статическая линковка

user posted image user posted image user posted image

PM MAIL Skype   Вверх
kemiisto
Дата 25.8.2011, 23:12 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 8
Всего: 160



Цитата(SolRus @  25.8.2011,  21:23 Найти цитируемый пост)
а ну видимо я ошибся при GNU LGPL можно статически линковать... \\?

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

Что для этого сделать написано в пункте 4d. Под циферкой 1 речь идёт как раз о той самой динамической линковке:
Цитата
1) Use a suitable shared library mechanism for linking with the Library.


А вот под циферкой 0 есть кое-что ещё, что пригодится как раз при статической линковке. Можно предоставить исходный код вашего приложения или объектный код, в таком виде, чтобы обеспечит возможность линковки с другой версией библиотеки.

Но это вопрос неоднозначный. То есть, если открывать исходники, то тут то всё однозначно и правильно. А вот вариант с предоставлением объектного кода спорный. Так что обычно рекомендуют LGPL-библиотеки линковать динамически, если не хотите открывать исходный код. Даже у Qt это не раз озвучивалось.

Но если стоит вопрос "Позволяет ли LGPL статическую линковку?", то ответ "Да, конечно." Только исходный код придётся открыть. Ну или вот этот спорный вариант с объектным кодом использовать...

Цитата(SolRus @  25.8.2011,  21:23 Найти цитируемый пост)
к примеру windjvu, mtorrent, virtualdub

Забавные у тебя примеры. Windows-only программы сравнивать с программами, написанными под кросс-платформенную либу? Смеёшься?

Цитата(SolRus @  25.8.2011,  21:23 Найти цитируемый пост)
заметь этим программам не нужно тягать в своем дистрибутиве к примеру библиотеку QtGui4.dll (почти 10 мб)

Спасибо, что просвятил. smile 

Цитата(SolRus @  25.8.2011,  21:23 Найти цитируемый пост)
ну, эт... самое...) раз такой умный, может сам напишешь что там должно быть на твое усмотрение, я скажу спасибо и остальные пользователи рувики (хотя думаю тебя это не мотивирует)

Меня это мотивирует не достаточно. Скажем так - есть дела и поважнее.

Цитата(SolRus @  25.8.2011,  21:23 Найти цитируемый пост)
ps: можно ли на qt написать программу которая по сути имеет лишь несколько графических элементов ( кнопка, комбобокс, таблица) размером <1 мбайт? < 100 кбайт? подразумевается статическая линковка

Я статически ни разу не линковал. Но думаю, что ответ, скорее, отрицательный.

Если тебе не нужна кросс-платформенность и при этом нужен (уж не знаю зачем, демосценщики вы наши smile ) столь малый размер программы, ты ошибся разделом. Подумай об этом.


--------------------
PM MAIL WWW GTalk Jabber   Вверх
bsa
Дата 29.8.2011, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 24
Всего: 196



Цитата(SolRus @  25.8.2011,  22:23 Найти цитируемый пост)
ps: можно ли на qt написать программу которая по сути имеет лишь несколько графических элементов ( кнопка, комбобокс, таблица) размером <1 мбайт? < 100 кбайт? подразумевается статическая линковка

Qt не сильно предназначен для создания программ уровня "привет мир". Основное - создание бизнес-приложений (например, Adobe Photoshop). В таких приложениях размер библиотеки 10-20 МБ не считается чем-то экстраординарным. Зато очень ценится возможность быстро написать основную часть программы не заморачиваясь на создание кнопочек/окошек, а так же при необходимости портировать на другую платформу.
Например, начинающий программист вряд ли оценит то, что интерфейс для работы с таблицей в SQL БД делается всего в 10-20 строк. Ну не надо ему это...
PM   Вверх
Amp
Дата 6.9.2011, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 886
Регистрация: 17.2.2009

Репутация: 7
Всего: 17



Gtk+ пытается в Windows работать точно также как и Qt - получает через системный вызов битмап с отрисованным контролом (или же его части) и блитит его на окно. Но так как почти всем плевать на поддержку win32-версии gtk+, то до ума рендеринг системной темы не доведен (например отсутствует анимация fade in/out в Vista/7).
PM MAIL   Вверх
Randajad
Дата 10.6.2012, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: нет
Всего: 8



Это ваше Qt использует MOC, что не является нативными сями, плюс лицензия.
wxWidgets действительно использует нативные контролы и весит много меньше. Хеломир меньше метра собрать реально, возможности сопоставимы с кт.
Так что именно по этому его и выбираем!

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

Это сообщение отредактировал(а) Randajad - 10.6.2012, 16:45
PM MAIL   Вверх
_GRIN_
Дата 10.6.2012, 22:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


одинокий падаван
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 18.11.2007
Где: Калуга

Репутация: 6
Всего: 7



основной плюс при выборе Qt - это документация (и онлайн и асситент интегрированный в creator).

Цитата(Randajad @  10.6.2012,  14:36 Найти цитируемый пост)
Это ваше Qt использует MOC, что не является нативными сями

=) после определнного момента перестаёшь обращать внимание не то что на чистоту языка, а вообще на язык. Любой необходимый базис нового языка изучается за неделю на ура. Так что это скорее предрассудок. Или вы про инструментарий (компиляторы)? В таком случае даже "чистый спп" (например 2011) не всеми компиляторами поддерживается в полной версии.

Цитата(Randajad @  10.6.2012,  14:36 Найти цитируемый пост)
плюс лицензия

А в чём проблема с лицензией.
Если пишешь для себя, то спокойно юзай опенсорс вариант.
Если ты продаёшь свой продукт (и продаёшь успешно) то спокойно можно отстегнуть за удобный инструмент (ты же по сути тоже за свой труд хочешь деньги получать).

Цитата(Randajad @  10.6.2012,  14:36 Найти цитируемый пост)
Хеломир меньше метра собрать реально

Размер результирующего файла (из личного опыта) интересует разве что определённую группу программистов, придающих этому внимание.
Остальных и пользователей в том числе это интересует по сути в последнюю очередь.
Есть конечно исключения для эмбеддед систем, но там обычно вообще на си и асме пишут.



--------------------
Дорогу осилит идущий
PM MAIL Skype   Вверх
Randajad
Дата 11.6.2012, 08:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 15.3.2012

Репутация: нет
Всего: 8



MOC можно приделать далеко не к любому IDE. Qt становится невозможно юзать без перехода к другому IDE.
Конечно можно отстегнуть, наверное так и надо делать. Слово экономия нам чуждо. Действительно, сейчас все богатые, а в компьютерах харды уже на террабайты и памяти гигабайты. smile
Реализуя какой-нибудь алгоритм в своем приложении вы так же мыслите, позвольте поинтересоваться? smile

Если минус wxWidgets - это документация - да, там есть пробелы в ней. Но они не такие значимые, имхо.
PM MAIL   Вверх
borisbn
Дата 11.6.2012, 10:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 48
Всего: 135



Цитата(_GRIN_ @  10.6.2012,  22:50 Найти цитируемый пост)
Если ты продаёшь свой продукт (и продаёшь успешно) то спокойно можно отстегнуть за удобный инструмент

Лицензия Qt не запрещает продавать свой продукт, сделанный из опенсоурс библиотеки. Даже не нужно, чтобы ваше приложение имело бы такую же лицензию. Главное - не изменять саму библиотеку.

Цитата(Randajad @  11.6.2012,  08:32 Найти цитируемый пост)
MOC можно приделать далеко не к любому IDE

А надо ? Есть IDE лучше, чем QtCreator под линукс и студия плюс Qt-шный аддон для Windows ?

Цитата(_GRIN_ @  10.6.2012,  22:50 Найти цитируемый пост)
Размер результирующего файла (из личного опыта) интересует разве что определённую группу программистов, придающих этому внимание.
Остальных и пользователей в том числе это интересует по сути в последнюю очередь.

Вот полностью согласен (никогда не понимал эту "определённую группу"). Randajad, вот скажи, неужели ты из двух программ, решающих  примерно одинаковые задачи (например - месенджеры QIP и PSI), выбираешь исключительно по тому, сколька каждая "весит" ? Разве не удобство, функционал, неглючность и т.д. и т.п. ?


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
boostcoder
Дата 11.6.2012, 11:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 4
Всего: 110



Randajad, ты не о том говоришь.
первый и основной минус кути в том, что она не может без moc`а. а тот в свою очередь, не дает кодить в привычном для меня стиле, ибо запрещает шаблоны.
второй минус(на мой взгляд) - размножаются ###кодеры.

PM WWW   Вверх
_GRIN_
Дата 11.6.2012, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


одинокий падаван
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 18.11.2007
Где: Калуга

Репутация: 6
Всего: 7



Цитата(Randajad @  11.6.2012,  06:32 Найти цитируемый пост)
Конечно можно отстегнуть, наверное так и надо делать. Слово экономия нам чуждо. Действительно, сейчас все богатые

Randajad, позволь вопрос - ты зарабатываешь программированием? Если да, то за свой труд ты бы хотел получать деньги? Почему же давит жаба оплатить труд других программистов, результатами которого ты пользуешься для своего заработка?
 Да и касательно использования опенсор для своей коммерции borisbn уже сказал. Просто до версии 4.5. наша фирма именно коммерческую лицензию покупала - вот я и по инерции - но суть таже.

Цитата(Randajad @  11.6.2012,  06:32 Найти цитируемый пост)
Реализуя какой-нибудь алгоритм в своем приложении вы так же мыслите, позвольте поинтересоваться? 

Зависит от "контекста" задачи (ТЗ, сроки выполнения и т.д.)

Цитата(boostcoder @  11.6.2012,  09:27 Найти цитируемый пост)
ибо запрещает шаблоны

разве? Спокойно юзаю шаблоны по мере необходимости.

Это сообщение отредактировал(а) _GRIN_ - 11.6.2012, 23:37


--------------------
Дорогу осилит идущий
PM MAIL Skype   Вверх
boostcoder
Дата 11.6.2012, 23:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 4
Всего: 110



Цитата(_GRIN_ @  11.6.2012,  23:08 Найти цитируемый пост)
юзаю шаблоны по мере необходимости

значит твоя необходимость мала.

PM WWW   Вверх
_GRIN_
Дата 11.6.2012, 23:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


одинокий падаван
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 18.11.2007
Где: Калуга

Репутация: 6
Всего: 7



Цитата(boostcoder @  11.6.2012,  21:13 Найти цитируемый пост)
значит твоя необходимость мала.

Вполне возможно, но мне хватает (шаблонные классы, шаблонные методы, шаблонные функции).

boostcoder, а можно пример кода (не зависимого от какой-либо библиотеки) содержий шаблон, который QtCreator не осилит?
Признаться очень интересно посмотреть.

Это сообщение отредактировал(а) _GRIN_ - 11.6.2012, 23:18


--------------------
Дорогу осилит идущий
PM MAIL Skype   Вверх
alexvs11
Дата 11.6.2012, 23:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


hell is here
**


Профиль
Группа: Участник
Сообщений: 518
Регистрация: 21.8.2010

Репутация: 2
Всего: 10



Цитата(_GRIN_ @  11.6.2012,  23:17 Найти цитируемый пост)
а можно пример кода (не зависимого от какой-либо библиотеки) содержий шаблон, который QtCreator не осилит?

все-таки который MOC не осилит
PM MAIL   Вверх
boostcoder
Дата 11.6.2012, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 4
Всего: 110



Цитата(_GRIN_ @  11.6.2012,  23:17 Найти цитируемый пост)
а можно пример кода (не зависимого от какой-либо библиотеки) содержий шаблон, который QtCreator не осилит?

закодь любой класс наследник QObject, и сделай его частичную специализацию основываясь на компайл-тайм типах/константах. тут-то moc скажет, что он о тебе думает smile

Добавлено @ 23:33
хотя я удивлен тому, что кто-то этого не знает.
признаюсь, с использованием Qt не кодил уже больше двух лет. возможно moc пофиксили... но очень сомневаюсь. иначе его бы пришлось научить специализировать шиблоны и генерить GIMPLE. а это наверное половина компилятора.

Добавлено @ 23:37
а в качестве сигналов/слотов, он уже позволяет использовать шаблонные методы/функции/функциональные_объекты/лямбды?


Это сообщение отредактировал(а) boostcoder - 11.6.2012, 23:38
PM WWW   Вверх
_GRIN_
Дата 11.6.2012, 23:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


одинокий падаван
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 18.11.2007
Где: Калуга

Репутация: 6
Всего: 7



Цитата(boostcoder @  11.6.2012,  21:28 Найти цитируемый пост)
закодь любой класс наследник QObject, и сделай его частичную специализацию основываясь на компайл-тайм типах/константах. тут-то moc скажет, что он о тебе думает 


такой пример (из одного моего работающего на местах) проекта подойдёт:
Код

template <class TServerItem>
class CComplectT : public QWidget
{
public:
    CComplectT(QObject* core,const QString&name,CAbstractView*parent) :
        QWidget(parent),
        m_parent(parent),m_core(qobject_cast<CGuiLogic*>(core)),m_name(name)
    {
        Q_ASSERT(m_core);
        Q_ASSERT(m_parent);
        m_grid = new QGridLayout(this);
        m_grid->setContentsMargins(2,4,2,2);
        m_grid->setSpacing(2);
        setPrivate();
    }
    virtual ~CComplectT(){}

protected:
    void setPrivate()
    {
        qtutil::safeClearMapOfPointers<ADP_TF_UID,CAbstractViewItem>(m_servers);
        Q_ASSERT(m_core->complects().contains(m_name));
        foreach(ADP_TF_UID uid,m_core->complects().value(m_name)) {
            CAbstractViewItem*server = new TServerItem(uid,m_core,this);
            connect(server,SIGNAL(evShow(ads::ADP_TF_UID)),m_parent,SIGNAL(evShow(ads::ADP_TF_UID)));
            m_grid->addWidget(server,0,m_servers.count());
            m_servers[uid] = server;
        }
    }

protected:
    CAbstractView* m_parent;
    CGuiLogic* m_core;
    QMap<ADP_TF_UID,CAbstractViewItem*>m_servers;
    const QString m_name;
    QGridLayout*m_grid;
};


тут правда шаблон нужен только в методе setPrivate() и там только конструктор шаблона с параметрами вызывался.
Но ничего другого под рукой нет к сожалению.

З.Ы. Я всё ещё достаточно плохо знаю кьют. Так что действительно посмотрел бы на ваш код илюстрирующий проблему.
Единтвенное ограничение, которое я знаю - это запрет множественного наследования qobject классов.

Добавлено через 5 минут и 11 секунд
Цитата(alexvs11 @  11.6.2012,  21:25 Найти цитируемый пост)
все-таки который MOC не осилит 

alexvs11, ваше замечание абсолютно верно =).
Мос имеет свои ограничения, и свои плюсы (сигналы слоты).
Сам по себе кьют использует moc для сигналов слотов. Если эти плюсы не нужны, то можно спокойно забить на moc и использовать кьют без генерации moc-файлов как обычно - просто не объявляйте Q_OBJECT (правда и без сигналов-слотов останетесь)


--------------------
Дорогу осилит идущий
PM MAIL Skype   Вверх
alexvs11
Дата 11.6.2012, 23:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


hell is here
**


Профиль
Группа: Участник
Сообщений: 518
Регистрация: 21.8.2010

Репутация: 2
Всего: 10



Цитата(boostcoder @  11.6.2012,  23:28 Найти цитируемый пост)
а в качестве сигналов/слотов, он уже позволяет использовать шаблонные методы/функции/функциональные_объекты/лямбды?

так как посылать/принимать сигналы могут только наследники QObject (вроде не только, но там с какими-то извращениями), то из этого списка вопрос только о шаблонных методах
http://doc.trolltech.com/qq/qq15-academic.html
думаю, что и сейчас невозможно

Цитата(boostcoder @  11.6.2012,  23:28 Найти цитируемый пост)
хотя я удивлен тому, что кто-то этого не знает.

видимо это достаточно редко требуется на практике?
PM MAIL   Вверх
boostcoder
Дата 11.6.2012, 23:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 4
Всего: 110



не видно как используется CComplectT.

Цитата(_GRIN_ @  11.6.2012,  23:48 Найти цитируемый пост)
посмотрел бы на ваш код илюстрирующий проблему

в псевдокоде:
Код

template<bool, typename T>
struct matrix_processor;

template<typename T>
struct matrix_processor<true, T>: QObject {};
template<typename T>
struct matrix_processor<false, T>: QObject {};

...

template<typename Painter>
struct widget: QWidget {
   
   matrix_processor<
       boost::is_float<Painter::item_t>::value
      ,Painter::item_t
   > concrete_processor;
};


типа этого.

касательно же:
Цитата(boostcoder @  11.6.2012,  23:28 Найти цитируемый пост)
в качестве сигналов/слотов, он уже позволяет использовать шаблонные методы/функции/функциональные_объекты/лямбды?

это вряд ли.

Добавлено через 58 секунд
Цитата(alexvs11 @  11.6.2012,  23:54 Найти цитируемый пост)
видимо это достаточно редко требуется на практике?

видимо по разным книжкам учились?

PM WWW   Вверх
Любитель
Дата 12.6.2012, 01:42 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 16
Всего: 92



Цитата(boostcoder @  11.6.2012,  23:28 Найти цитируемый пост)
а в качестве сигналов/слотов, он уже позволяет использовать шаблонные методы/функции/функциональные_объекты/лямбды?

Qt 5. http://qt-project.org/wiki/New_Signal_Slot_Syntax


--------------------
PM MAIL ICQ Skype   Вверх
boostcoder
Дата 12.6.2012, 09:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 4
Всего: 110



Цитата(Любитель @  12.6.2012,  01:42 Найти цитируемый пост)
Qt 5. http://qt-project.org/wiki/New_Signal_Slot_Syntax 

т.е. в конце этого месяца должен выйти релиз?
Цитата

Alpha released on April 3, 2012.
Beta release expected by April – May.
Final release expected by the end of June.

отсюда.

PM WWW   Вверх
alexSl
Дата 12.6.2012, 10:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


проходил мимо



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 22.2.2008

Репутация: нет
Всего: нет



Цитата(boostcoder @  12.6.2012,  09:00 Найти цитируемый пост)
т.е. в конце этого месяца должен выйти релиз?


Судя по тому, что пока нет бетты, то и релиз запоздает.
PM MAIL   Вверх
borisbn
Дата 12.6.2012, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 48
Всего: 135



Любитель, к сожалению и в этом варианте нет шаблонов. boostcoder прав - нет в Qt возможности связать шаблонный сигнал с шаблонным же слотом. А надо ?


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
boostcoder
Дата 12.6.2012, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 4
Всего: 110



Цитата(borisbn @  12.6.2012,  10:53 Найти цитируемый пост)
А надо ?

без этого никак.
какой-то недо-С++ получается. собственно и кутю не назовешь С++. так...Си с классами, не более.

PM WWW   Вверх
Любитель
Дата 12.6.2012, 18:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 16
Всего: 92



Речь о том, что функциональные объекты (в том числе лямбды_ могут выступать в качестве слотов.
А вот шаблонные сигналы.. Да, этого нету. Но откровенно область применения достаточно низкая (примеры приветствуются). Сигнал - это по сути часть интерфейса класса (обычный observer), мне лично сложно представить удачный пример, где реально нужен прям шаблонный сигнал.

Ну да, и если говорить про систему сигнал/слотов и пр. - то кроме Qt более удачной гуи либы для С++ я лично не знаю. Те жалкие function poiunter-ы в качестве колбэков в GTK+ или MFC-style месадж мэпы в wxWidgets.. Ужас smile

Можно, конечно, начать разговоры, что не нужно писать гуи на С++ итд, но это уже в другую тему надо.


--------------------
PM MAIL ICQ Skype   Вверх
alexvs11
Дата 12.6.2012, 18:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


hell is here
**


Профиль
Группа: Участник
Сообщений: 518
Регистрация: 21.8.2010

Репутация: 2
Всего: 10



Цитата(Любитель @  12.6.2012,  18:21 Найти цитируемый пост)
А вот шаблонные сигналы.. Да, этого нету. Но откровенно область применения достаточно низкая (примеры приветствуются). Сигнал - это по сути часть интерфейса класса (обычный observer), мне лично сложно представить удачный пример, где реально нужен прям шаблонный сигнал.

вот, както так
PM MAIL   Вверх
borisbn
Дата 12.6.2012, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 48
Всего: 135



Цитата(Любитель @  12.6.2012,  18:21 Найти цитируемый пост)
Можно, конечно, начать разговоры, что не нужно писать гуи на С++

Почему же в другую ? Я вот, например, сейчас как раз в поиске чем заменить гуи... Смотрю в сторону Java (нравится) и до-диез .Net (тоже)...
ИМХО те, кто делает гуи на Си++ - делают это по одной простой причине - больше ничего не знают (я, кстати, в их числе... пока...).
Лично мне Си++ нравится, но делать на нём гуи или веб-приложения - увольте...
Однако, если больше ничего не знаешь/не хочешь знать (нужное подчеркнуть), то КуТя - лучший вариант. ИМХО, ессно

Это сообщение отредактировал(а) borisbn - 12.6.2012, 18:59


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
alexvs11
Дата 12.6.2012, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


hell is here
**


Профиль
Группа: Участник
Сообщений: 518
Регистрация: 21.8.2010

Репутация: 2
Всего: 10



Цитата(borisbn @  12.6.2012,  18:54 Найти цитируемый пост)
Смотрю в сторону Java (нравится)

вот уж не сказал, что на java удобней гуй делается, что с swing'ом, что например в андроиде
в кутях же теперь к тому же будет javascript'овая морда (QML)

Это сообщение отредактировал(а) alexvs11 - 12.6.2012, 18:59
PM MAIL   Вверх
borisbn
Дата 12.6.2012, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 48
Всего: 135



Цитата(alexvs11 @  12.6.2012,  18:58 Найти цитируемый пост)
вот уж не сказал, что на java удобней гуй делается, что с swing'ом, что например в андроиде

насколько я понял, на андрюшке просто ничего другого нету (можно только длл-ки какие-то низкоуровневые делать на плюсах - NDK, кажется)
Цитата(alexvs11 @  12.6.2012,  18:58 Найти цитируемый пост)
в кутях же теперь к тому же будет javascript'овая морда (QML)

что-то как-то о QML не очень позитивно народ отзывается - http://forum.vingrad.ru/forum/topic-347579.html


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Любитель
Дата 14.6.2012, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 16
Всего: 92



Давайте плз в теме С++ не обсуждать прочие технологии. Для этого есть другие разделы на форуме.


--------------------
PM MAIL ICQ Skype   Вверх
JackYF
Дата 15.6.2012, 21:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 7
Всего: 162



Да, товарищи, прежде чем писать пост, посмотрите на заголовок темы. Про Qt5 лучше обсуждайте в отдельной теме.




--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Amp
Дата 27.6.2012, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 886
Регистрация: 17.2.2009

Репутация: 7
Всего: 17



Цитата(Любитель @  12.6.2012,  18:21 Найти цитируемый пост)
или MFC-style месадж мэпы в wxWidgets.. Ужас 

В wxWidgets обработку событий можно делать через вызов Bind/Connect. Просто слишком много туториалов написано с использованием таблиц диспетчеризации, в т.ч. и их примеры.
PM MAIL   Вверх
boostcoder
Дата 28.6.2012, 11:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 4
Всего: 110



Цитата(borisbn @  12.6.2012,  10:53 Найти цитируемый пост)
в Qt возможности связать шаблонный сигнал с шаблонным же слотом. А надо ?

а шаблонные функции надо?

расширим приведенный выше код так:
Код

template<bool, typename T>
struct matrix_processor;

template<typename T>
struct matrix_processor<true, T>: QObject {};

template<typename T>
struct matrix_processor<false, T>: QObject {};
...

template<typename Painter>
struct widget: QWidget {
   
   matrix_processor<
       boost::is_float<Painter::item_t>::value
      ,Painter::item_t
   > concrete_processor;

signals:
   void draw_item(const ???& item); // 1
};

...


struct dialog: QWidget {
   dialog() {
      connect(&_processor, SIGNAL(draw_item(???)), SLOT(draw_item(???))); // 2
   }

public slots:
   void draw_item(const ??? & item) { // 3
   }

private:
   widget _processor;
};

в первой точке, какой тип передается сигналом?
во второй точке тот же вопрос.
и самое интересное в третьей точке: мне что, писать слотов столько, сколько типов педедает сигнал? - бред же. это именно та ситуация, когда слот должен быть шаблонным. но кто его специализировать будет? moc? ;)

именно по этому я и говорю, что кутя не позволяет кодить в хорошем стиле . в стиле "Си с классами" - да, пожалуйста.


Это сообщение отредактировал(а) boostcoder - 28.6.2012, 11:33
PM WWW   Вверх
borisbn
Дата 29.6.2012, 08:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 48
Всего: 135



Цитата(boostcoder @  28.6.2012,  11:23 Найти цитируемый пост)
в первой точке, какой тип передается сигналом?

как раз для такого случая есть вполне сносный костыль QVariant. Он в куте повсюду используется.

Добавлено через 2 минуты и 9 секунд
Кстати, обрати внимание, как тема называется:
Цитата
Какими графическими кроссплатформенными библиотеками вы пользуетесь?



--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
boostcoder
Дата 29.6.2012, 10:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 4
Всего: 110



Цитата(borisbn @  29.6.2012,  08:31 Найти цитируемый пост)
как раз для такого случая есть вполне сносный костыль QVariant.

костыль, иначе не назовешь. зачем статически типизированный ЯП превращать в динамически?

Цитата(borisbn @  29.6.2012,  08:31 Найти цитируемый пост)
Какими графическими кроссплатформенными библиотеками вы пользуетесь?

а это к чему?

PM WWW   Вверх
alexvs11
Дата 29.6.2012, 10:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


hell is here
**


Профиль
Группа: Участник
Сообщений: 518
Регистрация: 21.8.2010

Репутация: 2
Всего: 10



Цитата(boostcoder @  29.6.2012,  10:16 Найти цитируемый пост)
а это к чему?

то что нормальный гуй на таком построен не будет
PM MAIL   Вверх
boostcoder
Дата 29.6.2012, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 4
Всего: 110



Цитата(alexvs11 @  29.6.2012,  10:20 Найти цитируемый пост)
 нормальный

относительно чего?

Цитата(alexvs11 @  29.6.2012,  10:20 Найти цитируемый пост)
на таком

на каком?
о чем речь?

PM WWW   Вверх
spyswamp
Дата 26.7.2012, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 349
Регистрация: 18.8.2006

Репутация: 1
Всего: 7



Что вы заладили с этими шаблонами? Отключайте moc, подключайте свою систему сигнал-слотов и вперед, творить, так сказать! Все что решается в рамках Qt - надо решать в рамках Qt. Если это не подходит, то сраные Q_OBJECT отключаются, и начинается любимый хардкор. smile


--------------------
- why you call it beta?
- cuz it's betta then nothin'
PM MAIL   Вверх
boostcoder
Дата 26.7.2012, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 4
Всего: 110



Цитата(spyswamp @  26.7.2012,  14:05 Найти цитируемый пост)
Отключайте moc, подключайте свою систему сигнал-слотов и вперед

так и делаю.
потому и говорю, что кути нинужно.
PM WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




[ Время генерации скрипта: 0.4013 ]   [ Использовано запросов: 24 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.