LINUX.ORG.RU

[c++] А есть ли какая альтернатива Qt?

 


0

3

Судя по последним течениям в рассылке, из Qt упорно делают JS-фреймворк. Поэтому назревает вопрос о поиске альтернатив для будущих разработок на языке c++. Пока только нашёл wxWidgets, gtkmm/glibmm. По потреблению памяти они явно превосходят текущий Qt, да и api у них какой-то страшный, ИМХО. Посмотрел ещё на boost. В принципе, сойдёт, но библиотек для гуя там нет. Есть ещё отдельно библиотеки виджетов fltk, fox. Но что-то они уж совсем малофункциональные.

Интересно, есть ли ещё что-нибудь в этом плане, чтобы можно было полноценно заменить Qt?

Ответ на: комментарий от dmitryalexeeff

>Последнее десятилетие показало что программировать интерфейсы по принципу «разметка»/«оформление»/«клиентский код»/«серверный код» намного удобнее чем с помощью классов в приплюснутом коде.

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

truetester
() автор топика
Ответ на: комментарий от Jetty

>Ты думаешь неправильно. Вероятно у тебя битые сегменты в мозге есть. Ну и модуль ЧСВ надо заменить на исправный, а то этот что-то зашкаливает.

Тебя это беспокоит? К врачу давно обращался?

truetester
() автор топика
Ответ на: комментарий от Kosyak

>Блин, ну прикрутят JS к QtCore, тебе-то какое дело? Не хочешь - не используй.

Вот с этим как раз и проблемы. Во-первых, таскать с собой JS движок у меня нет ни малейшего желания. Во-вторых, написать интерфейс на «pure c++» без использования JS будет проблематично. Про остальное уже говорили.

Развел тут нытик-тред.

Тред посвящён исключительно поиску альтернатив Qt. Честно, не знаю, почему у тебя поиск альтернатив ассоциируется с нытьём.

truetester
() автор топика
Ответ на: комментарий от truetester

> Может под Windows оно лучше в плане зависимостей?

Лучше, оно там WinAPI использует. Поэтому зависимостей нет, тот же zlib оно с собой тащит.

Amp ★★★
()
Ответ на: комментарий от MegoPups

>U++

А вот за это спасибо. Впервые услышал о таком.

truetester
() автор топика
Ответ на: комментарий от truetester

Ну да, я понял... «сам дурак» называется...

Jetty ★★★★★
()
Ответ на: комментарий от truetester

> Так это мелочь. Qt тоже тащит кучу библиотек с собой. Ну да ладно. Посмотрим, что там с Qt выйдет.

Я писал на wx и на qt. Мое мнение такое - если нужно написать пару незамысловатых диалогов и при этом хочется тащить с собой самый-самый минимум (или статически слинковаться), то wx тут неплохо подходит. Тот же dropbox написан на нем и тащит только wxbaselib. Плюс гномоюзеры довольны, т.к. выглядит для них нативно за счет использования gtk+ Но если нужен разухабистый и навороченный интерфейс, то я бы взял qt.

Amp ★★★
()

ИМХО ява SWING, в ней можно биндить коды на c++ (как то там это реализовано, но мне это никогда ненужно было)

pozitiffcat ★★★
()
Ответ на: комментарий от truetester

> А вообще, подожду более адекватных комментариев.

...сказал человек, назвавший Qt JavaScript-фреймворком.

pevzi ★★★★★
()
Ответ на: комментарий от truetester

>написать интерфейс на «pure c++» без использования JS будет проблематично
Ну вот зачем так откровенно лгать?

trex6 ★★★★★
()
Ответ на: комментарий от MegoPups

Спасибо за интересную информацию. Никогда раньше не слышал об этом фреймворке.

trex6 ★★★★★
()
Ответ на: комментарий от pevzi

>И откуда это следует?

Меня очень удручает твоя неосведомлённость. Короче, читай рассылку.

truetester
() автор топика
Ответ на: комментарий от Gorthauer

>wx в линуксах не просто тормозит, а именно ТОРМОЗИТ!!!!!!одинодинодин

Не спорю. Странно, если бы после стольких прослоек над gtk он не тормозил.

truetester
() автор топика
Ответ на: комментарий от truetester

>Да, я тоже надеюсь, что кто-нибудь его форкнет.

Форкнут-то вряд ли, но расширенная поддержка 4.8.х наверняка будет

annulen ★★★★★
()
Ответ на: комментарий от annulen

>Форкнут-то вряд ли, но расширенная поддержка 4.8.х наверняка будет

Это уже вопрос к digia. Будут ли они его развивать в угоду коммерческих клиентов.

truetester
() автор топика
Ответ на: комментарий от truetester

>Это уже вопрос к digia.

Это не единственная организация, которая может быть заинтереосвана в развитии 4.х. Есть много платформ, на которых Qt 5 или не вообще взлетит (нет опенгл ес 2), или потребует серьезной допилки

annulen ★★★★★
()
Ответ на: комментарий от annulen

>Она не поломана, у них там поменялось что-то

Что такое, отказались от стилей? Странно. Ещё более странно, что make docs возвращает всё как было в 4.7.3. Если это не баг, то весьма странная «фича».

truetester
() автор топика
Ответ на: комментарий от annulen

>Это не единственная организация, которая может быть заинтереосвана в развитии 4.х.

Я тоже на это надеюсь.

truetester
() автор топика
Ответ на: комментарий от truetester

И что? Сейчас он нормально работает. Под капотом то же самое, что и у второго, только без многопроцессности

annulen ★★★★★
()
Ответ на: комментарий от Gorthauer

> wx в линуксах не просто тормозит, а именно ТОРМОЗИТ!!!!!!одинодинодин

wxAUI тормозит и рисует с артефактами в линуксе, соглашусь. В остальном тормозов не замечал.

Amp ★★★
()
Ответ на: комментарий от annulen

>И что? Сейчас он нормально работает. Под капотом то же самое, что и у второго, только без многопроцессности

А я и не говорил, что он сейчас не рабочий. Я про долгосрочные перспективы.

anonymous
()
Ответ на: комментарий от truetester

Останентся в виде основного языка. На нем по-прежнему будет написан Qt. Основным гуем станет QML (который можно совмещать с C++ или Javascript), привычные QWidget-ы будут вынесены в отдельный модуль.

Deleted
()
Ответ на: комментарий от Amp

... Плюс гномоюзеры довольны, т.к. выглядит для них нативно за счет использования gtk+ ...

Нифига не довольны! Wx всегда выглядит чужеродно: не соответствует HIG'у, виджеты вроде TreeView выглядят и ведут себя не так. Даже Qt косит под gtk+ намного лучше чем wx на gtk+. Про то, что сейчас уже актуально gtk+3 я даже не говорю.

k_andy ★★★
()
Ответ на: комментарий от k_andy

wxWidgets пилится медленно, не сразу они запилят поддержку третьего gtk (которая кстати вряд ли им даст каких-то бенефитов). Кстати подробнее можешь объяснить различия в HIG-е и поведении у стандартных виджетов wx и gtk, на примере тех же TreeView?

Amp ★★★
()
Ответ на: комментарий от Amp

> Кстати подробнее можешь объяснить различия в HIG-е и поведении у стандартных виджетов wx и gtk, на примере тех же TreeView?

в wx практикуется использование «generic» виджетов вместо родных, в частности wxTreeListCtrl, wxTreeCtrl на маке и пр., всякие доморощенные wxGrid, wxAUI, wxRibbon, wx*ComboBox так же в родное GUI совершенно не вписываются

aho
()

WPF - лучший на текущий момент GUI фреймворк. Высокоуровневый, многофункциональный(чего стоит одна возможность произвольных трансформаций, в т.ч. в 3D) с подвижками в сторону реактивности/датафлоу(биндинги, триггеры, etc.), на платформе с GC.

На линуксе, да и вообще, среди т.н. «свободных» тулкитов, естественно, аналогов его - нет. Потому что у этого сброда на дворе до сих пор каменный век - C++, Сигналы/Слоты(жалкое, кривое, глючное и монструозное подобие банальных event'ов из дуднета), или вообще сишечка(всмысле, гытыка), и прочий сракотан.

Велосипедным линуксоедовым сиплюсплюсным поделиям из каменного века, типа Qt, до WPF, естественно, еще срать да срать. Да ну куда до WPF - даже до Cocoa им срать да срать. Самое смешное, когда эти поделия из каменного века пытаются вылезти(напр. вот тут уже упоминали QML), тут же набегает толпа злостно негодующих красноглазых, требующих оставить им их любимый дельфи-стайл недоevent-driven интерфейс.

Радует, что в новом Qt от плюсцов таки начнут отказываться(в пользу JS, или чего там?). Потому что собственно C++ это главная проблема Qt. Как на C++ вообще в 21 веке можно писать GUI? На C++ вообще мало что можно писать, но е-моё, если насчет тридээкшонов и прочего (около-)реалтайма можно еще поспорить, то вот GUI - на плюсах писать категорически нельзя.

lovesan

anonymous
()
Ответ на: комментарий от anonymous

Тут обычно любят вспоминать пример EverNote, который переписали с WPF на C++ (MFC или что-то типа такого).

dave ★★★★★
()
Ответ на: комментарий от truetester

> Может под Windows оно лучше в плане зависимостей?

Естественно. О причине, надеюсь, догадаешься сам. ;)

LamerOk ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.