Языки программирования и инструментарий — сложные темы. Вероятно, вам удавалось использовать компьютеры долгое время, не задумываясь.
Но когда вы переключились на Linux, проблема внезапно стала актуальной. Это потому, что насколько хорошо приложение интегрируется с остальной частью вашего рабочего стола, часто возникает вопрос: сделано ли оно в GTK + или Qt?
Что такое GTK + и Qt?
GTK + и Qt — это наборы инструментов, используемые разработчиками для структурирования внешнего вида и ощущения приложения. Эти наборы инструментов предоставляют кнопки, панели инструментов, ползунки и меню, которые вы видите при использовании приложения.
Инструментарий экономит время разработчиков. Вместо того, чтобы кодировать или проектировать размер, форму и внешний вид каждой кнопки, они могут позволить инструментарию позаботиться об этой работе. Это позволяет им сосредоточиться на основных функциях, которые предоставляет приложение, таких как редактирование документов или воспроизведение музыки.
История GTK + и Qt
Haarvard Nord и Eirik Chambe-Eng начали разработку Qt в 1991 году. Название, которое произносится как «милый», появилось из-за того, как буква Q выглядела шрифтом Eavcs Haavard, и из-за предыдущего использования буквы t в Xt, X инструментарий уже используется на рабочих столах Unix.
Nord и Chambe-Eng позже стали соучредителем Quasar Technologies, которая стала Throll Tech, затем Throlltech, и теперь существует в другой форме, как The Qt Company.
В 1995 году Throll Tech выпустила исходный код для версии Qt для Linux. Но это не соответствовало определению Free Software Foundation в отношении свободного поскольку людям не разрешалось распространять код, если они вносили какие-либо изменения. Лишь в 2000 году Throlltech предоставил пользователям свободу свободно редактировать и распространять код.
GTK + начинался как GIMP Toolkit, созданный Питером Маттисом в качестве замены существующего интерфейса, используемого в программе манипуляции изображениями GNU. После переписывания инструментарий стал GTK + и был выпущен в 1998 году. В отличие от Qt, у людей была свобода редактировать, изменять и делиться GTK + с самого начала.
Хотя Qt в некотором смысле является более универсальным и адаптируемым инструментарием, сообщество в течение первых лет консолидировалось вокруг GTK +. Стоит также отметить, что некоммерческий фонд GNOME теперь поддерживает GTK +, в то время как публично торгуемая компания The Qt Company ведет разработку Qt. Тем не менее, на данный момент ни один инструментарий не является «более бесплатным», чем другой.
Настольные ПК и программное обеспечение на базе GTK
Если вы недавно перешли на Linux, есть большая вероятность, что вы используете настольный компьютер на базе GTK. Это потому, что во многих из лучших настольных сред Linux используется GTK +.
Возьмите GNOME, опцию по умолчанию в таких известных и хорошо зарекомендовавших себя ОС Linux, как Ubuntu, Fedora и Debian. Затем есть альтернативы, такие как MATE и Xfce, которые предлагают более легкие и более традиционные интерфейсы.
Давайте не будем забывать об Elementary OS, новичке, который больше обслуживает последние коммутаторы, чем давние пользователи Linux.
Многие из самых популярных приложений с открытым исходным кодом лучше интегрируются с десктопами на базе GTK. Это включает в себя такие программы, как Firefox, Thunderbird, LibreOffice и GIMP. Менее известные кроссплатформенные приложения на основе GTK включают AbiWord, Inkscape и Pidgin.
Среди приложений GTK + растет степень разнообразия. Программное обеспечение, разработанное специально для GNOME, может выглядеть неуместно даже на других настольных ПК на базе GTK. Это связано с тем, что руководящие принципы разработки интерфейса пользователя GNOME не поощряют использование меню и вносят другие, менее распространенные изменения.
Также знайте, что многие приложения, предназначенные для elementaryOS, недоступны для других рабочих столов.
Между тем, большинство вышеупомянутых популярных кроссплатформенных инструментов GTK + остаются относительно независимыми от настольных компьютеров (что означает, что они выглядят неуместно в GNOME и элементарной OS, поскольку акцент делается на уникальном дизайне).
Настольные ПК и программное обеспечение на основе Qt
Рабочий стол KDE Plasma является старейшей полнофункциональной рабочей средой для Linux. Если бы в 1996 году Qt был полностью открыт, GNOME, возможно, даже не существовало бы. Более двух десятилетий спустя сообщество KDE продолжает предоставлять самый многофункциональный рабочий стол Linux.
Поскольку существует так мало других настольных ПК на базе Qt, многие приложения Qt специально разработаны для настольных компьютеров Plasma и могут даже зависеть от различных компонентов KDE. По этой причине интеграция программного обеспечения KDE является одной из лучших среди любых настольных систем.
Вы можете настроить интерфейс, который влияет на каждое приложение, или вы можете настроить одно приложение, пока оно не станет удобным. Тем не менее, рабочий стол Plasma не единственный, который использует Qt. LXQt — это одна из альтернатив, которая фокусируется на том, чтобы быть легче и проще.
Хотя некоторые программы KDE являются кроссплатформенными, эти программы не так известны за пределами сообщества Linux. Наиболее заметными исключениями могут быть Krita и digiKam.
Не все программное обеспечение Qt специально разработано для KDE. К таким программам относятся медиаплеер VLC и настольное издательское приложение Scribus.
Разница имеет значение?
Есть технические различия между GTK + и Qt, но большинство из них больше интересуют разработчиков, чем остальные из нас. В наши дни ограничения еще труднее заметить, чем раньше. Благодаря отличной тематике многие приложения GTK + теперь выглядят как дома на рабочем столе Plasma на базе Qt. Некоторые из этих приложений выглядят больше на плазме, чем в GNOME.
Между тем, вы также можете установить Scribus или VLC на рабочий стол на базе GTK, даже не осознавая, что есть разница.
Но небольшие несовместимости появляются время от времени. Приложения могут открывать другое окно выбора файлов, когда вы ищете файл для открытия. Настройки системных тем могут относиться к определенным приложениям, но не к другим. Чем больше вы возитесь с вашим рабочим столом, тем больше причуд может появиться.
В конечном счете, вопрос о том, предпочитаете ли вы GTK + или Qt, сводится к выбору вашего любимого интерфейса рабочего стола и ваших любимых приложений для Linux.