Qt vs wxWidgets личный опыт

February 28th, 2011 Begemot Posted in Oбщее, Qt

Меня тут спросили, спросили – отвечаю. В кратце про Qt vs wxWidgets после некоторого опыта, очень в кратце.

 

Про Qt:

1. На Qt писать быстрее и проще (субьективно и смотря что)

2. Написанное под виндо в течении 3 месяцев запускается на макоси после часа работы.

3. Приложения не родные

4. Приложения здоровые.

 

Про wxWidgets:

1. Писать вполне нормально, хотя может и не так гладко как на Qt

2. Результат выглядит роднее

3. Бинарников по паре сотен килобайт не получается, но и не десятки метров как у Qt.

4. Запуск под макосом – требует гораздо большего количества нервов, времени и напильников.

 

Для этой программы я после 10 дней на вх, выбрал Qt (совсем его тогда не зная), и не пожалел. Для своих Clipdiary и Flashnote я все таки считаю что wx не плох, хотя следует признать что первая программа уже продается под МакОС, а вторая и третья только в далекой перспективе:)

В общем – как всегда для конкретной задачи, нужен конкретный инструмент.

А еще, учитывая последний маневр Нокии, есть вероятность что развитие Qt тормознется, об этом стоит тоже думать….


Если пост полезен для вас вы можете подписаться на RSS или мы можем доставлять вам новые посты прямо в ваш почтовый ящик.

Related:

Posted in Oбщее, Qt

27 Responses to “Qt vs wxWidgets личный опыт”

  1. “Бинарников по паре сотен килобайт не получается, но и не десятки метров как у Qt.”

    Ну вы когда по сети прогу передаете, все равно ее в архив упаковываете, вот и получается пара килобайт. Еще есть такой классный упаковщик MEW, который сжимает 3-м мегобайтную прогу на wxWidgets до 600-700 Кб. Скачать на wasm.ru можно

    А по поводу переноса под макОсь не расскажите поподробнее? Можно ли уже в процессе кодирования придерживаясь неких правил избежать геморроя в будущем?

    И еще, если не секрет. Спрашивал в тви, но ответа не дождался ) Вы в какой-то IDE работаете или на чистом wxWidgets пишите?

  2. Adamos Says:

    Если вы распространяете программу, то упаковщики могут преподнести неприятный сюрприз – например, такие файлы могут возбуждать ложное срабатывание антивирусов.
    Да и большого смысла в этом нет. Скорее всего, вы будете упаковывать программу в дистрибутив, при этом она все равно сожмется…

  3. >А еще, учитывая последний маневр Нокии
    Можно об этот подробнее? Что за маневр?

  4. С половиной не согласен.
    Если у тебя бинарники на Qt весят десятки мегабайт, то ты криво описал зависимости в файлах и в конфиге QMake.

    По по воду одного приложения под разными платформами. Напротив, приложения на Qt выглядят как родные что под виндой, что под макосью, что в разных DE линукса. Они смотрят не на только систему, но и на принятые стандарты — расположение кнопок, растяжение и т.п.
    Вот по теме — http://habrahabr.ru/blogs/qt_software/111345/

    > Можно об этот подробнее? Что за маневр?
    Большая часть телефонов Nokia будет под Windows Phone 7. Но это к замедлению Qt не приведёт. Почитайте, например, http://habrahabr.ru/blogs/qt_software/114077

  5. iZverrG Says:

    а виджеты разве активно развиваются?

  6. Безумный Программист,
    Ну момент передачи программы по сети – далеко не самый важный. Меня больше беспокоит, размер работающей программы и как следствие размер потребляемой памяти.

    По поводу переноса под макос – на Qt все просто, под вх сложнее гораздо, но с вх у меня особо опыта нету, так что что делать заранее не скажу к сожалению.

    Я пишу в 2008 студии, под маком XCode – хотя если под маком буду работать серьознее, наверное попытаюсь посмотреть альтернативные иде.

  7. Obey-Kun,
    >>>Если у тебя бинарники на Qt весят десятки мегабайт, то ты криво описал зависимости в файлах и в конфиге QMake.

    Зависимости я помоему нигде не описывал (или я просто не понял о чем речь), а QMake я благополучно не использую. но бандл под макос до 65+ метров распухает после того как я все собираю.. Ехе под винду действительно маленький, но память жрет неплохо. ну и инсталятор почти 8М

    Хотя следует признать что на вх 2.9 + тоже ехешники получаются не маленькими, но расход памяти явно меньше.

    >>>По по воду одного приложения под разными платформами. Напротив, приложения на Qt выглядят как родные что под виндой, что под макосью, что в разных DE линукса.

    Покажешь примеры? Все время это считалось главмным минусом Qt, и до сих пор проблемы есть. Если владешь тайным знанием, подскажи можно ли разумными усилиями привести это к маковскому виду и поведению http://www.rsdn.ru/forum/cpp.qt/3920069.flat.aspx#3920069
    дерево сильно беспокоит.

    За ссылку спасибо, изучу.

    iZverrG, ну может не активно но все-таки развиваются. Но если правда что Нокия Кт не бросит – то я рад

  8. Alexey Says:

    Небольшой экскурс в историю. Nokia сейчас переживает не самые лучшие времена. Старый руководитель компании был смещен потому, что акционеры были очень сильно недовольны снижением прибыли компании. Соответственно новый обязан увеличить прибыль. Одной из типичных возможностей является снижение непрофильных издержек, чем, например, сейчас является оплата около сотни Qt разработчиков. Собственно что-то такое уже началось http://www.opennet.ru/opennews/art.shtml?num=29824. Из-за раннего соглашения между KDE и Trolltech исходники Qt нельзя закрыть, это хорошо, т.е. lgpl вроде как всегда будет доступен. Однако есть много интересных вариантов как можно извлекать деньги из lgpl-продуктов. Например, добавлять в библиотеку классы, которые доступны только под GPL и коммерческой лицензией и слабо развивать старые классы. Делать отдельные платные платформы. Например, Qt for Android и т.п. В общем вариантов много.

  9. iZverrG Says:

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

  10. Ну вот и новость от 9 марта
    Nokia продала Qt компании Digia
    http://www.cnews.ru/news/line/index.shtml?2011/03/09/431082
    Что скажете, господа? 🙂

  11. iZverrG Says:

    Что сказать, что сказать. Феерический пиздец. Как и сама нокия.

  12. Да, тут уже всё не так радужно. Но не факт, что всё будет плохо. Кьют и без ноклы отлично развивался.

  13. Почитал по форумам: у компании Digia уже несколько последних лет приличные убытки. Т.е. на какие деньги они будут развивать Qt?

  14. Если это действительно так, то остаётся OpenSource-сообщество.

  15. Zambi Says:

    Любопытно, какую СУБД использует Breeding Master ?

  16. Прошу обратить внимание, Digia занимается лишь коммерческой поддержкой Qt. Разработкой Qt Nokia как занималась, так и занимается, сокращений не было.

  17. RomanV, а где пишут, что у Digia приличные убытки? Диджия – публичная компания, акции котируются на бирже, официальный финансовый отчет опубликован на сайте, и убытками там не пахнет.
    Поделитесь ссылочкой, пожалуйста.

  18. Zambi, SQLite.

  19. 1Pozitiv, я читал на англоязычных форумах. Но, правильно, надо смотреть финансовые данные. Вот например ссылка:
    http://www.digia.com/C2256FEF0043E9C1/0/405000927
    т.е. если смотреть net profit то видно, что только 2009 год у них отрицательный. а в целом, нормальная компания.
    поэтому, правильно, надо не читать что что сказал, с смотреть первоистоичник.

  20. RomanV, спасибо за ответ:)

    Digia очень серьезно относится к Qt. Думаю, повода для пессимизма нет:)
    Вот из свежего:

    “Digia анонсирует релиз Qt Commercial 4.6.4″
    http://www.digia.ru/index.php?id=50&mod_action=show_news&mod_news_entry_id=76

  21. Дайте линк или скажите пожалуйста, какие платформы (особенно мобильные) поддерживает wxWidgets?

  22. сложный вопрос…

  23. Скажите тогда,пожалуйста, какие точно мобильные ОС (платформы) поддерживает (в которых вы уверены).

  24. Точно: Windows Mobile (старые версии до 7).

  25. Федя Дастаевский Says:

    Я 10 лет назад в школе изучал бейсик. А потом увидел в магазине книгу “бьерн страуструп язык программирования с++”, прочитал 20 страниц, покурил, подумал и понял как меня обманули. Все эти c++ – старье под дос и командную строчку, а сейчас все программы оконные. Поэтому я решил, что надо писать оконные программы на современных оконных языках. Тогда я набрал в гугуль “windows ui library” и четвертый сайт оказался wxwidgets.org и скачал оттуда wxwidgets-2.4.zip для ос “окна”. Затем распаковал это и там даже не нашел установщика, это ооказались какие-то исходные тексты программы которые надо было собирать самому с помощью неизвестно чего. И потом забыл об этом. А потом я наткнулся на qt-project.org, скачал оттуда qt, установил , запустил Qt Creator IDE и сразу же написал мою первую оконную программу с пустым окошком и надписью “привет мир”, а потом запустил. И это РАБОТАЛО! Теперь буду учится программировать на QT,его основные плюсы это простота и удобство, возможность рисовать элементы, хорошая и удобная справка. Для новичков вроде меня самое то. А что делать с wxwidgets большинство людей даже не поймут.

  26. мощно!

  27. Пиво Says:

    Вообще-то я web-девелопер, основная специализация – фреймворки для высоконагруженных проектов. Как-то так исторически сложилось, что обычно я пишу их в виде расширений к nginx на Lua. Скорость разработки сопоставима с разработкой на скриптовых языках типа PHP или Perl, при этом Lua прост, как барабан и код удобно поддерживать, даже если он написан внезапно не тобой.

    И вот тут как-то буквально на днях скидывает мне один коллега “левак” – сам собрался в отпуск, а ему какие-то толстые дядьки заказали инсталляцию WordPress с кастомными шаблонами (шаблоны у них уже были от какой-то пафосной лондонсмкой дизайн-студии). Платили хорошо, но одно из требований нас, мягко говоря, удивило: а именно, надо было отключить в WP веб-форму добавления заметок, и вместо неё написать standalone-клиента под Windows и MAC OS.

    И тут я вспоминаю, что существует такая штука – wxLua. Это Lua с поддержкой wxWidgets. В общем, приложение было написано при помощи wxFormBuilder’а и какой-то матери буквально за час, а портабельным я его сделал при помощи микрософтины на Free Pascal.

Leave a Reply