Сколько весит qt
Одной из популярных сред разработки под С++ является среда Qt Creator. Qt Creator является кроссплатформенным, может работать на Windows, Linux и macOS и позволяет разрабатывать широкий диапазон приложений — десктопные и мобильные приложения, а также приложения для встроенных платформ. Рассмотрим, как создать простейшую программу на С++ в Qt Creator.
Загрузим программу установки. Для этого перейдем на страницу https://www.qt.io/download-qt-installer
Сайт автоматически определяет текущую операционную систему и предлагает для нее загрузить онлайн-установщик. Для загрузки нажмем на кнопку Download:
Регистрация программы установки
После загрузки запустим программу установки:

Вначале программа установки предложит осуществить вход с логином и паролем от учетной записи QT. Однако если у вас нет учетной записи QT, то необходимо зарегистрироваться. Для этого нажмем на ссылку «Зарегистрироваться». И в поля ввода введем логин-электронный адрес и пароль:

Нажмем на кнопку «Далее». После этого на указанный электронный адрес придет ссылка, по которой надо перейти для завершения регистрации.

После этого в программе установки QT снова нажмем на кнопку «Далее»

Установка
Затем отметим пару флажков и нажмем на кнопку «Далее»:

И после этого мы перейдем непосредственно к установке затем отметим пару флажков и нажмем на кнопку «Далее»:

Затем нам будет предложено выбрать, надо ли отправлять отчет :

Далее надо будет указать каталог для установки (можно оставить каталог по умолчанию), а также тип установки:

В качестве типа установки можно указать «Выборочная установка», тогда на следующем шаге необходимо будет указать устанавливаемые компоненты:

В данном случае я выбрал для установки последнюю на данный момент версию Qt — Qt 6.2.3 за исключением двух пакетов (MSVC 2019). При установке для Windows прежде всего стоит отметить пункт компилятора MinGW — на данный момент это MinGW 11.2.0. 64-bit . Остальные компоненты можно устанавливать при необходимости. При установки следует учитывать свободное место на жестком диске, так как некоторые компоненты занимают довольно многом места.
В зависимости от текущей операционной системы набор компонентов может отличаться. Например, набор компонентов для Qt 6.2.3 для MacOS:

Затем надо принять лицензионное соглашение и настроить ярлык для меню Пуск. И далее нажмем на кнопку «Установить»:

Создание проекта С++ в Qt Creator
После завершения установки запустим Qt Creator. На стартовом экране выберем вкладку Projects (Проекты), на которой нажмем на кнопку New (Создать):

В окне создания нового проекта в качестве шаблона проекта выберем Plain C++ Application :

Далее надо будет задать имя проекта и каталог, где он будет располагаться:

На следующих шагах оставим все значения по умолчанию. И на последнем шаге нажмем на кнопку Finish для создания проекта:

И нам откроется проект с некоторым содержимым по умолчанию:

Проект будет иметь один файл — main.cpp , и в центральной части — текстовом редакторе будет открыт его код:
#include using namespace std; int main()
Запустим его, нажав на зеленую стрелку в нижнем левом углу Qt Creator. И в нижней части Qt Creator откроется окно Application Output с результатами работы скомпилированной программы
Мало весящий IDE для С++?
Хочу в него поставить какую либо IDE ( вроде так ) чтобы она могла скомпелировать простенький код от С++, ну там по синтаксису меня погонять и по мелочи, супер наворотов ненужно. Хотелось бы конечно чтобы еще и Java магла ) но это не обязательно. Поглядываю на Eclipse, но я мало знаю в этих областях, может подскажите что еще есть нормального и хорошего ? а главное маловесное и мало ресурса прожорливое.
..А то уже вижу как я ставлю MVSC, MSVC (Microsoft Visual Studio C++ ) и мой планшет объятый синим пламенем убегает от меня с криками «да ну тебя горе программист» )
пс: не нужно про компиляторы отдельно, как то туго у меня с ними, не пошло (: *да вероятно туповат 🙂
- Вопрос задан более трёх лет назад
- 1781 просмотр
Комментировать
Решения вопроса 1

С/С++, iOS, OS X, печеньки)
Qt Creator — самое оно. Никакие зависимости от Qt он не тянет! Для его работы тебе надо сделать только одно — поставить Windows SDK tools (в нее входят компиляторы, рантайм либы, Net.Framework и MSBuild). Ставишь SDK, ставишь Qt Creator — можно кодить. Qt как библиотека тебе будет не нужна.
Сам SDK весит около 500-700м, а Qt Creator ~ 80 мб в архиве и ~ 200 мб в установленном виде.
Сколько весит qt
26 сентября 2023
Скопировано
Qt — это библиотека классов C++ и набор инструментального программного обеспечения для создания кросс-платформенных приложений с графическим интерфейсом (GUI). Существуют вариации для других языков: PyQt для Python, QtRuby для Ruby, Qt Jambi для Java.

«IT-специалист с нуля» наш лучший курс для старта в IT
Кто пользуется Qt
- Разработчики на C++, которые создают десктопные и мобильные приложения.
- Разработчики ПО для интернета вещей или для микрокомпьютеров.
- Специалисты в области специализированного оборудования: embedded-систем, промышленных роботов и другой сложной автоматики.
Профессия / 8 месяцев
IT-специалист с нуля
Попробуйте 9 профессий за 2 месяца и выберите подходящую вам

Сферы применения
В основном Qt используют для создания очень быстрых и высокопроизводительных приложений. Это мессенджеры, игры или сложные ресурсоемкие программы. Он популярен в сферах, имеющих повышенные требования к безопасности ПО. Среди них:
- промышленность и транспортная отрасль. На C++ и на Qt пишут программы для роботов, которые используются на производствах, в перевозке грузов и других похожих отраслях. Qt используют при написании программного обеспечения для автомобилей, кораблей и других видов транспорта;
- MedTech. Фреймворк применяют при создании программных систем и интерфейсов для медицинского оборудования;
- IoT. На C++ с Qt пишут логику для «умных» приборов, которые подключаются к интернету вещей.
С использованием Qt написаны мессенджер Telegram, продукты Autodesk, окружение рабочего стола для многих систем под ядром Linux и пр.
Модули Qt
Тут перечислена часть основных модулей — блоков программного кода библиотеки Qt. В них содержатся классы и функции для создания приложений и работы с данными.
- QtCore — ядро фреймворка.
- QtGUI — компоненты для создания интерфейсов.
- QtNetwork — функции для работы с сетевыми соединениями.
- QtSql — компоненты для работы с базами данных на основе SQL.
- QtWidgets — модуль для работы с виджетами.
- QtXml — компоненты для обработки XML, специального формата хранения файлов.
- QtXmlPatterns — инструменты для работы с языками, которые обрабатывают данные XML и организуют к нему доступ.
- QtScript — классы внутреннего скриптового языка Qt Scripts.
- QtOpenGL — инструменты для работы с библиотеками, написанными по спецификации OpenGL.
- QtSvg — компоненты для обработки векторной графики.
- QtMultimedia — инструменты для работы с мультимедиа-файлами.
- QtWebEngine — ядро браузера Chromium, адаптированное под Qt.
- QtTest — компоненты для тестирования приложений.
- Qt3Support — поддержка старых версий фреймворка.
- QtCLucene — инструменты для автоматического поиска.
Что входит в Qt
Кроме библиотеки и ее модулей, Qt содержит дополнительное ПО, утилиты, справочники и внутренние языки.
Qt Creator. Это IDE, среда программирования. Внутри Qt Creator можно писать, компилировать и запускать код, тестировать его и выполнять отладку. Среда работает в Windows, Linux и macOS.
Qt Assistant. Большой справочник и библиотека документации. Он добавляет в среду возможность открывать и читать документы, сохраненные в QCH — внутреннем формате Qt для справочных документов. Ассистент позволяет быстро разобраться в работе нужного модуля.
QT Linguist. Инструмент помогает быстрее локализовать приложение на разных языках. Используется при создании программ, которые рассчитаны на мультиязычную аудиторию.
Qt Designer. Инструмент позволяет быстро создавать графические интерфейсы (GUI). Он поставляется вместе с фреймворком и подходит для разработки приложений, где большую роль играют визуальные компоненты. Интерфейс создается внутри инструмента с помощью C++, сохраняется в файл и подключается к проекту, написанному на Qt.
Qt Quick. Еще один инструмент для интерфейсов. Он отличается от предыдущего: GUI создается не на C++, а с использованием специального языка QML. Отличается и стиль описания компонентов. Qt Quick предназначен для быстрого и простого создания интерфейсов. Его часто применяют при разработке мобильных приложений и игр.
QML. Это язык для создания интерфейсов от команды Qt. Он основан на среде JavaScript и помогает быстро описывать графические интерфейсы. В Qt реализована полная поддержка QML, а сам язык встроен в инструмент Qt Quick.

Курс для новичков «IT-специалист
с нуля» – разберемся, какая профессия вам подходит, и поможем вам ее освоить
Метаобъектная система в Qt
Так называется часть ядра, которая отвечает за взаимодействие процессов и объектов между собой. В Qt это взаимодействие построено на системе слотов и сигналов.

- Каждый компонент может посылать сигнал об изменении состояния.
- У других компонентов есть специальные функции-слоты, которые принимают сигналы и в зависимости от них совершают либо не совершают действие.
Это реализация идеи «Наблюдатель и наблюдаемое», позволяющая не повторять одинаковый код. Чтобы внедрить эту систему в C++, нужна метаобъектная компиляция. Она дополняет возможности «чистого» языка. Так объекты способны хранить больше информации, поэтому им можно добавить сигналы и слоты.
Такое взаимодействие нужно при построении графических интерфейсов. Например, программа должна реагировать на определенные действия пользователя. Также система необходима при асинхронном или многопоточном программировании.
Преимущества Qt
Кросс-платформенность. Qt — кросс-платформенный фреймворк. Это значит, что он существует для всех популярных операционных систем: Windows, Linux, iOS и Android. Фреймворк используют при разработке под любые устройства: от микроконтроллеров до суперкомпьютеров.
Высокая скорость. Программы на C++ быстро обрабатываются и запускаются. Также C++ — компилируемый язык программирования. Это значит, что компилятор транслирует исходный код на C++ в исполняемый файл, который содержит набор машинных инструкций, что тоже влияет на скорость.
Удобная среда разработки. Qt Creator — среда, в которой легко разобраться. В ней есть все необходимое, важные компоненты находятся под рукой, а сам инструмент интуитивно понятен. В нем удобно организована отладка, поэтому разработчику легче находить проблемные участки кода.
Быстрое создание GUI. Дополнительные инструменты помогают быстро спроектировать интерфейс и разработать дизайн. Благодаря Qt Creator и его возможностям фреймворк отлично подходит для создания приложений с упором на графический интерфейс.
Взаимодействие процессов. Благодаря метаобъектной системе Qt может более гибко управлять межпроцессным взаимодействием, чем «чистый» C++. Сейчас это преимущество не так актуально, потому что появились версии C++ 11 и выше. Но много проектов пользуется легаси-кодом, написанным на старых версиях языка. Там особенности взаимодействия все так же важны.
Документация. На официальном сайте представлена подробная документация, которая поможет разобраться с особенностями работы с Qt.
Недостатки Qt
Сложности с лицензией. У Qt тройное лицензирование. Существуют три варианта библиотеки, каждый из них — под своей лицензией. Один предназначен для коммерческой разработки, второй — для проектов с открытым исходным кодом, третий — для собственнических проектов. Для коммерческих проектов нельзя использовать бесплатную версию.
Большой вес приложений. Qt добавляет много новых сущностей, все они занимают место. Итоговый проект быстро работает, но много весит. Для десктопных приложений это не так критично, как для мобильных.
Обратная совместимость. Из-за обратной совместимости со старыми версиями разработчики поддерживают в том числе неоптимальные решения.
Сложность. C++ — сложный язык. В нем много абстракций, он не интуитивно понятный. Новичкам бывает трудно в нем разобраться.
Распространенность. В основном C++ используется только там, где нужна высокая скорость работы. Это программное обеспечение для сложных промышленных систем, медицинской техники, автомобилей, роботов. Для пользовательских приложений язык применяется реже, чем раньше. Поэтому Qt встречается не так часто, как другие фреймворки.
Как начать работу с Qt
Бесплатную версию фреймворка можно скачать на официальном сайте. Небольшая программа-инсталлятор Qt Installer подгрузит и установит необходимые компоненты. Можно воспользоваться бесплатной версией либо приобрести лицензию. Она подходит для крупных коммерческих проектов. Для тестирования инструмента достаточно триальной версии (полная версия Qt со сроком действия 10 дней).
IT-специалист с нуля
Наш лучший курс для старта в IT. За 2 месяца вы пробуете себя в девяти разных профессиях: мобильной и веб-разработке, тестировании, аналитике и даже Data Science — выберите подходящую и сразу освойте ее.

Статьи по теме:
- Перевод кенийского языка жестов с помощью глубокого обучения
- Хорошо ли айтишникам работать на фрилансе?
Сколько весит qt
добрый день, друзья
возник выбор — для проекта (не на работе, а собственного) выбираю GUI фрэймворк. желательно (очень сильно предпочтительно) кроссплатформенный, поэтому MFC, WTL и что-то подобное сразу отваливается. интерфейс должен быть довольно-таки красивым, нужны модные контролы.
QT, в чем плюсы — очень популярный и жутко много инфомарции (книги, статьи, тп), можно быстро сделать интерфейс (по сравнению с MFC). скачал LastFm Scrobbler (сделан на QT) — красивый интерфейс, очень забавный, но этот маленький легкий клиентик весит аж !60 мб — это катастрофа. хотя, видимо, это не только из-за QT : ) а еще злые языки поговаривают, что иногда не слишком быстро QT приложения шмыгают — так ли это?
GTK, WxWidgets — документации значительно меньше, информации на форумах тоже само-собой, на счет таких же удобных редакторов и бла-бла тоже вроде бы как похуже.
может быть что-то еще есть подобного рода?
буду очень рад услышать Ваши ответы. спасибо Большое : )
Re: Qt, Gtk, WxWidgets — что выбрать?
| От: | enji | |
| Дата: | 23.02.13 15:26 | |
| Оценка: | 1 (1) +1 | |
Здравствуйте, nanim, Вы писали:
N>буду очень рад услышать Ваши ответы. спасибо Большое : )
qtcore весит 2 метра, qtgui — 8. Работа с сеткой, xml, БД отдельными либами — тут хз что тебе надо.
Опять таки, 60 метров — в чем проблема то?
К примеру tortoisehg, которая включает в себя qt, питон, меркуриал и еще несколько либ — инсталлятор порядка 30 метров, установленное приложение весит 80.
Если твое приложение будет опенсурсным, можешь собирать статически и несколько сэкономить, выкинув неиспользуемый код.
Я делал несколько утилит приличного размера на Qt — штука довольно удобная. Некоторых раздражает свой препроцессор, мне он неудобств не доставляет. Дока к ней просто фантастическая. Не просто формальная, практически по каждому классу есть подробное описание, примеры. Что напрягает — после тех же дельфей — относительно малое количество компонентов. К примеру, в составе Qt есть все для скинов. Но готовых наборов скинов нету.
Код приятный и понятный (по сравнению с тем же бустом). Шаблоны есть, но относительно простые. В самой либе нету исключений, но как я понимаю, она не запрещает кидать их пользователю.
На WxWidgets я когда-то что-то маленькое пытался писать, что-то не впечатлило, уже не помню почему. По GTK только читал какое-то описание, так что сравнить с Qt не могу.
Re: Qt, Gtk, WxWidgets — что выбрать?
| От: | MTD | https://github.com/mtrempoltsev |
| Дата: | 23.02.13 15:26 | |
| Оценка: | 1 (1) | |
Здравствуйте, nanim, Вы писали:
N>60 мб — это катастрофа. хотя, видимо, это не только из-за QT : ) а еще злые языки поговаривают, что иногда не слишком быстро QT приложения шмыгают — так ли это?
Если не линковать статически, то библиотеки Qt прибавят 8-10 Мб к твоему дистрибутиву. Что такое шмыгают не знаю. Если вопрос про отзывчивость интерфейса, то злые не языки не слушай — все работает быстро.
N>GTK, WxWidgets — документации значительно меньше, информации на форумах тоже само-собой, на счет таких же удобных редакторов и бла-бла тоже вроде бы как похуже.
Re: Qt, Gtk, WxWidgets — что выбрать?
| От: | Аноним | |
| Дата: | 23.02.13 15:31 | |
| Оценка: | 1 (1) | |
Qt — хорошая кростплатформенность(даже на мобильный сегмент)
Re[2]: Qt, Gtk, WxWidgets — что выбрать?
| От: | nanim |
| Дата: | 23.02.13 16:02 |
| Оценка: |
спасибо за содержательный ответ, в сторону QT смотрю уже серьезнее : )
а вот про IDE теперь — Eclipse, NetBeans, QTCreator — понятно, что для QT удобнее последний выбрать, как я понимаю, к двум другим тоже можно дизайнер QT форм прикрутить и есть ли вообще плюсы какие-то в связках Eclipse+QT, NetBeans+QT в сравнении с его родным QTCreator (кстати, есть ли что-то подобное VisualAssistX в этой IDE? и можно ли сделать что-то подобное MSVS solution, чтобы был 1 проект — собственно проект, а второй, например, гугл тесты?) ?
Re[3]: Qt, Gtk, WxWidgets — что выбрать?
| От: | enji | |
| Дата: | 23.02.13 16:56 | |
| Оценка: | 2 (2) | |
Здравствуйте, nanim, Вы писали:
N>спасибо за содержательный ответ, в сторону QT смотрю уже серьезнее : )
N>а вот про IDE теперь — Eclipse, NetBeans, QTCreator — понятно, что для QT удобнее последний выбрать, как я понимаю, к двум другим тоже можно дизайнер QT форм прикрутить и есть ли вообще плюсы какие-то в связках Eclipse+QT, NetBeans+QT в сравнении с его родным QTCreator
Я использую Eclipse для всех своих проектов на С++, поэтому его же использую и для Qt. Плюсы — там настраиваемая семантическая подсветка и неплохой анализатор кода. Ну и билд у меня на scons, хз, прикручивается ли он к креатору. В качестве компилятора использую msvc, в основном из-за удобной отладки.
Минусы — нужна некоторая настройка, нет автокомплита для слотов-сигналов (ибо это макросы и эклипсу неизвестна их особая роль), нет интеграции с дизайнером форм. Для быстрого старта, конечно, удобнее взять QtCreator. Но у креатора с мингв под виндой проблемы с отладкой.
Кстати, qmake, помнится, умеет и проекты для студии генерировать. Так что если купленная студия с асистом — возможно самое оно. У меня студия экспресс, поэтому мне эклипс удобнее.
Re[4]: Qt, Gtk, WxWidgets — что выбрать?
| От: | serjjj |
| Дата: | 24.02.13 10:12 |
| Оценка: |
Здравствуйте, enji, Вы писали:
E>Но у креатора с мингв под виндой проблемы с отладкой.
Что за проблемы?
Re[5]: Qt, Gtk, WxWidgets — что выбрать?
| От: | enji |
| Дата: | 24.02.13 17:04 |
| Оценка: |
Здравствуйте, serjjj, Вы писали:
E>>Но у креатора с мингв под виндой проблемы с отладкой.
S>Что за проблемы?
я пробовал qt4.7. Были тормоза и падения отладчика на вполне тривиальных примерах. Возможно сейчас что-то поменялось, не проверял.
Re[6]: Qt, Gtk, WxWidgets — что выбрать?
| От: | lexer_lx |
| Дата: | 25.02.13 19:04 |
| Оценка: |
E>я пробовал qt4.7. Были тормоза и падения отладчика на вполне тривиальных примерах. Возможно сейчас что-то поменялось, не проверял.
Ничего не изменилось. Breakpoint’ы мы игнорируем, на некоторых останавливаемся и тут же падаем, хотя постоянно кто-то говорит что у него «вроде работало» =)
Мы используем студию+VA+QtDesigner ну и Creator под линухом.
Re: Qt, Gtk, WxWidgets — что выбрать?
| От: | alex_public |
| Дата: | 28.02.13 17:07 |
| Оценка: |
Здравствуйте, nanim, Вы писали:
N>добрый день, друзья
N>возник выбор — для проекта (не на работе, а собственного) выбираю GUI фрэймворк. желательно (очень сильно предпочтительно) кроссплатформенный, поэтому MFC, WTL и что-то подобное сразу отваливается. интерфейс должен быть довольно-таки красивым, нужны модные контролы.
N>QT, в чем плюсы — очень популярный и жутко много инфомарции (книги, статьи, тп), можно быстро сделать интерфейс (по сравнению с MFC). скачал LastFm Scrobbler (сделан на QT) — красивый интерфейс, очень забавный, но этот маленький легкий клиентик весит аж !60 мб — это катастрофа. хотя, видимо, это не только из-за QT : ) а еще злые языки поговаривают, что иногда не слишком быстро QT приложения шмыгают — так ли это?
N>GTK, WxWidgets — документации значительно меньше, информации на форумах тоже само-собой, на счет таких же удобных редакторов и бла-бла тоже вроде бы как похуже.
N>может быть что-то еще есть подобного рода?
N>буду очень рад услышать Ваши ответы. спасибо Большое : )
Qt сильнее всех по кроссплатформенности (в смысле количества платформ, а не качества) и по широте библиотек. Но при этом мне не нравится их подход с извращением языка. Грубо говоря работая с Qt, вы работаете уже не на C++, а на неком извращение, которое становится C++ только после своего препроцессора. Да, и главное, на самом деле это не нужно было делать, т.к. то, чего они хотели добиться, сейчас в других библиотеках без проблем реализуется средствами чистого C++. Это так сказать тёмное наследие у них.
WxWidgets соответственно чуть послабее, но без левых извращений. И плюс у неё есть свои фирменные штучки, типа того что под всеми платформами у неё нативный интерфейс (особенно актуально для Mac).
Gtk вообще не конкурент этим двум.
Да, ещё замечу что Qt и wxWidgets это не просто GUI фреймворки — там скорее есть вообще всё. Соответственно если вам нужен только GUI то выбор гораздо богаче и есть много легковесных продуктов. Какие-нибудь там FLTK и т.п. А если брать ещё и GUI с собственной графической прорисовкой (на opengl там и т.п.) то ещё цела куча добавляется.
Re[2]: Qt, Gtk, WxWidgets — что выбрать?
| От: | nen777w |
| Дата: | 01.03.13 00:12 |
| Оценка: |
_>Qt сильнее всех по кроссплатформенности (в смысле количества платформ, а не качества) и по широте библиотек. Но при этом мне не нравится их подход с извращением языка. Грубо говоря работая с Qt, вы работаете уже не на C++, а на неком извращение, которое становится C++ только после своего препроцессора. Да, и главное, на самом деле это не нужно было делать, т.к. то, чего они хотели добиться, сейчас в других библиотеках без проблем реализуется средствами чистого C++. Это так сказать тёмное наследие у них.
Люто +ю, сам недавно накнулся на такие проблемы. Если крато то шаблоны и классы в стиле Qt не совместимы, если не кратоко то тут
Автор: nen777w
Дата: 30.01.13
Но кактус жрать продолжаю, потому как на Qt очень быстро и просто делается GUI + всякие стили (с чем ещё особо глубоко не разбирался) позволяют красиво замодить приложение подав на вход движку только декларативное описание того что Вы хотите. В остальном потоки, работа с файлами и прочее есть в boost потому туда пока не совался и наверно не буду.
Re[2]: Qt, Gtk, WxWidgets — что выбрать?
| От: | SaZ |
| Дата: | 05.03.13 09:29 |
| Оценка: |
Здравствуйте, enji, Вы писали:
E>qtcore весит 2 метра, qtgui — 8. Работа с сеткой, xml, БД отдельными либами — тут хз что тебе надо.
Btw,
Не знаю, как с точки зрения лицензий (буду признателен, если объясните), но библиотеки Qt прекрасно ужимаются UPX-ом.
Re: Qt, Gtk, WxWidgets — что выбрать?
| От: | Mazay |
| Дата: | 10.03.13 08:32 |
| Оценка: |
Здравствуйте, nanim, Вы писали:
N>возник выбор — для проекта (не на работе, а собственного) выбираю GUI фрэймворк. желательно (очень сильно предпочтительно) кроссплатформенный, поэтому MFC, WTL и что-то подобное сразу отваливается. интерфейс должен быть довольно-таки красивым, нужны модные контролы.
N>QT, в чем плюсы — очень популярный и жутко много инфомарции (книги, статьи, тп), можно быстро сделать интерфейс (по сравнению с MFC). скачал LastFm Scrobbler (сделан на QT) — красивый интерфейс, очень забавный, но этот маленький легкий клиентик весит аж !60 мб — это катастрофа. хотя, видимо, это не только из-за QT : ) а еще злые языки поговаривают, что иногда не слишком быстро QT приложения шмыгают — так ли это?
N>GTK, WxWidgets — документации значительно меньше, информации на форумах тоже само-собой, на счет таких же удобных редакторов и бла-бла тоже вроде бы как похуже.
Достоинство WxWidgets одно — нативные контролы, но набор виджетов небольшой, документация скудная. Вобщем не для красивого UI .
Qt — это определённо «препарат выбора» для кроссплатформенного GUI на С++. Так что про его достоинства писать нет смысла, а про недостатки Qt тут уже написали.
Но на мой взгляд, стоит внимательнее присмотреться к GTK. Из-за скудной документации возможности GTK мало известны, хотя на самом деле это весьма мощный и современный UI-фреймворк. Пройдёмся по некоторым пунктам, которые мне кажутся недостаточно известными:
1) В GTK есть CSS. То есть бесплатные скины/темы и ещё всякие фишки, которые всегда любили web-девелоперы:
http://www.youtube.com/watch?v=gTYUn72Wjyk
В комбинации с Clutter Actors очень мощная штука:
https://www.youtube.com/watch?v=jdFU1_wKv3o
2) Лучший набор биндинов для всяких языков. В том числе к Python и специализированному Vala (синтаксис от C#, компиляция в машинный код через C). ИМХО это крайне важная фича, ибо разработка UI это весьма особый вид разработки и выбор языка для UI не должен зависеть от языка, выбранного для разработки функционала программы (подобно SQL, JavaScript). В GTK биндигам уделяется особое внимание (см. GObject).
3) Система слот-сигнал не требует препроцессинга исходников, в отличие от Qt.
4) Pango — мощная, но элементарно используемая библиотека для отображения текста. Вроде бы элементарная вещь — показать строчку текста, но если нужно сделать красиво, то можно словить геморрой. Pango полностью закрывает вопрос.
5) GtkBuilder позволяет рисовать GUI по его описанию в формате XML. Я так понимаю, что связка GtkBuilder + CSS + ClutterActors даёт функционал, аналогичный QML.
6) Есть интеграция c Cairo — это для рисования «модных» контролов.
7) Есть Accessibility Toolkit. Правда на сколько он юзабельный —
Чисто идеологически, мне GTK нравится больше чем Qt — лучшая модульность и меньшая связность компонентов, лучше реализован принцип единственной ответсвенности и т.д. Но модульность приводит к тому, что и без того скудная документация размазана по разным проектам. В итоге народ просто не знает всего набора фич, и о GTK складывается впечатление как о допотопном фреймворке, в котором ничего нет, кроме базовых контролов и лэйаутов.
Главное гармония .
Re: Qt, Gtk, WxWidgets — что выбрать?
| От: | Denys V. | http://ua.linkedin.com/in/dvalchuk |
| Дата: | 10.03.13 08:36 | |
| Оценка: |
Здравствуйте, nanim, Вы писали:
N>добрый день, друзья
N>возник выбор — для проекта (не на работе, а собственного) выбираю GUI фрэймворк. желательно (очень сильно предпочтительно) кроссплатформенный, поэтому MFC, WTL и что-то подобное сразу отваливается. интерфейс должен быть довольно-таки красивым, нужны модные контролы.
N>QT, в чем плюсы — очень популярный и жутко много инфомарции (книги, статьи, тп), можно быстро сделать интерфейс (по сравнению с MFC). скачал LastFm Scrobbler (сделан на QT) — красивый интерфейс, очень забавный, но этот маленький легкий клиентик весит аж !60 мб — это катастрофа. хотя, видимо, это не только из-за QT : ) а еще злые языки поговаривают, что иногда не слишком быстро QT приложения шмыгают — так ли это?
Qt — зато поддержка есть почти всего что нужно.
С уважением Denys Valchuk
IMHO чем больше мнений тем оптимальней выбор варианта. 🙂
