LINUX.ORG.RU

Разработчики Audacious возвращаются на GTK2

 ,


0

3

По словам Джона Линдгрена, одного из руководителей проекта Audacious, разработчики всерьез планируют отказаться от использования библиотеки GTK3, поскольку «некоторые решения, внедрённые в последних версиях GTK3, затрудняют написание традиционных десктопных приложений». Среди причин названы монохромные иконки, декорирование на стороне клиента и уведомления в стиле Android.

В отдалённом будущем планируется переход на фреймворк Qt, а до тех пор разработка будет вестись с использованием стабильной и проверенной временем библиотеки GTK2, переход на которую запланирован, начиная с грядущей версии Audacious 3.6. Отдельная ветка кода с GTK3 будет поддерживаться лишь при наличии существенного интереса со стороны пользователей.

>>> Подробности

anonymous

Проверено: fallout4all ()
Последнее исправление: fallout4all (всего исправлений: 1)

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

Возьми какую-то небольшую прогу на GTK и чисто ради интереса перепиши на Qt.

да я видел примеры, как мой код с гтк на кутэ переписывали, мне хватило. я на C++ пишу только за деньги. и то не факт.

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

Не хочешь не верь, уговаривать не буду. У себя сравнивал - софт на гтк кушает меньше.

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

gtk+-2.24.24 релизнулся вчера. не умирает.

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

а также с венды на макось, с макоси на линух, с линуха на плинтус, и т.п. что сказать хотел?

С плинтуса пониось. Но никто не переходит на гтк, ибо скатился. Это и хотел сказать.

говно они делают. но оно по прежнему меньшее зло, чем писать под линупсы на C++.

Даже линус уже осознал, что нет.

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

Не, я про суть, т.е. твое мнение о нем.

мнение о конкретном коде, или вообще о qt?

код, который был написан для qtui изначально, был такой говенный, что кроме как с него посмеяться — другого применения я не нашел. может сейчас там лучше стало, я не смотрел.

вообще о qt — мне не нравится кодить на c++. непонятно о чем тут еще говорить. т.е. qt, wxwidgets, fltk и т.п. — все это я использовать не буду. это просто личное предпочтение. ну и вдобавок ко всему, мне не нравится look&feel qt'шных приложений. на всех осях.

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

вообще о qt — мне не нравится кодить на c++. непонятно о чем тут еще говорить.

Не, ну это я знаю. Хотя ничего не мешает юзать С код с только мордой на Qt, но это такое. Я больше про тот Qt код.

код, который был написан для qtui изначально, был такой говенный, что кроме как с него посмеяться — другого применения я не нашел. может сейчас там лучше стало, я не смотрел.

Аж интересно стало, погляжу. Мой опыт - в 50% сокращении кол-ва кода и сильном повышении читабельности при переписывании на Qt.

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

Но никто не переходит на гтк, ибо скатился.

с этим никто не спорит. бежать с гтк щас в тренде. я вот тоже бегу потихоньку, правда на cocoa. точнее, я и гтк никуда не деваю - пусть будет, мне не жалко. одно другому не мешает.

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

Мой опыт - в 50% сокращении кол-ва кода и сильном повышении читабельности при переписывании на Qt.

у меня опыт программирования на C++ около 15 лет. на C примерно 20. в т.ч. принимал участие в очень больших проектах на обоих языках. и я еще никогда не видел, чтобы код на C++ был короче или читабельнее сишного. это конечно если не считать откровенного говнокода, который на любом языке бывает.

я уж молчу о сравнении эффективности, паттернах аллокации, и т.п.

наверное, куда-то не туда смотрел.

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

и я еще никогда не видел, чтобы код на C++ был короче или читабельнее сишного.

Ну нифига се заявочка. Оставим в покое тот факт, что области применимости С и С++ разные. Ты писал одни и те же вещи на С и С++? При этом на С++ ты юзал либы или как на С - велосипедил? Уверен, что на С++ ты писал «на С++», а не «на С»? А то понятно, откуда у тебя такие результаты.

З.Ы. В своем примере про 50% я говорил именно про GTK часть - т.е. портирование гуя, вообще не задевая явно отделеленной от гуя логики.

я уж молчу о сравнении эффективности, паттернах аллокации, и т.п.

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

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

Оставим в покое тот факт, что области применимости С и С++ разные.

с чего это вдруг?

В своем примере про 50% я говорил именно про GTK часть - т.е. портирование гуя, вообще не задевая явно отделеленной от гуя логики.

на 100% не отделишь. все равно будет куча кода, не имеющего отношения к гую. в разы больше, чем непосредственно вызовы gtk/qt.

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

я почти всю жизнь работаю в геймдеве, где типично отсутствует понятие «достаточно быстрое».

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

Ты писал одни и те же вещи на С и С++?

разные конечно. зачем одно и то же писать?

При этом на С++ ты юзал либы или как на С - велосипедил?

всякое бывало. и так, и так. зависит от требований конкретного проекта.

Уверен, что на С++ ты писал «на С++», а не «на С»?

тоже по-разному. в геймдеве часто бывает, что часть синтаксиса C++ нельзя использовать, или сводить к минимуму. или например stl запрещен в рантайме. и т.п. а иногда наоборот - все можно. ну разве что boost никогда не пробовал.

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

с чего это вдруг?

Прикинь, в случаях, когда важна сопросождаемость, а не тотальная производительность, выбирают С++. За исключением низкоуровневого кода, где только дурак не использует С. Захочешь опровергнуть - приведи контрпример _не FOSS_ софта на С (FOSS всегда по приколу пишут на чем попало или «на том, что знаю лучше»).

я почти всю жизнь работаю в геймдеве, где типично отсутствует понятие «достаточно быстрое».

Оно и видно. И стал забывать, что кроме геймдева есть еще куча областей, где «достаточно быстрое» более чем имеет смысл.

на 100% не отделишь. все равно будет куча кода, не имеющего отношения к гую. в разы больше, чем непосредственно вызовы gtk/qt.

Ну про кучу не заливай.

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

разные конечно. зачем одно и то же писать?

Вот и я про то - сравнить то нормальной возможности не было.

в геймдеве часто бывает, что часть синтаксиса C++ нельзя использовать, или сводить к минимуму. или например stl запрещен в рантайме. и т.п. а иногда наоборот - все можно. ну разве что boost никогда не пробовал.

... Что весьма здраво по требованиям. Но вот чистого С++ у тебя по ходу не было. С тем же бустом и компанией. Буст - ад и израиль внутри, но кому какое дело до внутренностей? А его использование дает хорошее упрощение программы в ряде областей. Это как пример. Да, если ты не юзаешь либы по тем же причинам производительности - не удивляйся, что у тебя С++ не выигрывает по читабельности или кол-ву кода.

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

приведи контрпример _не FOSS_ софта на С (FOSS всегда по приколу пишут на чем попало или «на том, что знаю лучше»).

в данный момент почти не встречается, потому что msvs не поддерживает c99, а C++ развивает постоянно.

раньше основная масса игр была на C. сейчас на C++. а мобильные вообще на C# (из-за unity).

Оно и видно. И стал забывать, что кроме геймдева есть еще куча областей, где «достаточно быстрое» более чем имеет смысл.

там где не нужна скорость - есть более удобные языки, чем C++. поэтому он тоже теряет смысл. опять же, я не согласен, что типичный C++ код понятнее типичного сишного кода.

Ну про кучу не заливай.

можешь посмотреть в deadbeef. гуй в отдельном плагине, т.е. отделен дальше некуда, но в нем куча логики намешана, которая как бы и не гуй.

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

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

приходим к моему исходному мнению. зачем писать на C++, становясь перед выбором «читабельность vs производительность», если можно получить все сразу в сишечке?

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

Но вот чистого С++ у тебя по ходу не было. С тем же бустом и компанией.

каким боком буст стал чистым C++?

ну и давай пример читабельного кода на бусте. разве что с появлением type inference в новых стандартах стало получше. и то не факт.

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

зачем писать на C++, становясь перед выбором «читабельность vs производительность», если можно получить все сразу в сишечке?

1. Про читабельность - 4.2. Как минимум потому выбор остается.

2. Про размер кода - он все таки меньше. Потому выбор остается.

3. Поддерживаемость как раз зависит от первых двух.

4. Производительность не всегда нужна. Но у тебя это уже в крови - ты всегда будешь на это тратить время. Это проблема ряда эмбедов и геймдевов, которые начинают писать что-то другое. Причем порой это до гроба не исправляется - видал примеры.

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

там где не нужна скорость - есть более удобные языки, чем C++.

Ну ок, есть разные градации «не нужна скорость», и разные языки. С++ идеально подходит под «не везде нужна скорость».

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

каким боком буст стал чистым C++?

Я имел ввиду C++-style.

ну и давай пример читабельного кода на бусте.

Любой код, юзающий boost::asio. Возьми и представь эквивалентный С код - порадуешься.

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

очень хороший вопрос. даже не просто «си-программистам», а на чём вообще гуйню писать. хочется же без дополнительно event-loop'а, рендеринг в фреймбуфер когда надо, аппаратное ускорение тоже, без плюсового рантайма.

офигенно тяжёлый вопрос на самом деле.

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

Про размер кода - он все таки меньше. Потому выбор остается.

это еще надо доказать.

Поддерживаемость как раз зависит от первых двух.

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

Производительность не всегда нужна.

такое я пишу на перле или js.

Но у тебя это уже в крови - ты всегда будешь на это тратить время.

см выше.

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

что-то другое - это что? я ж написал выше, что это самое другое, где не нужна производительность, я вообще не пишу на крестах и сишечке.

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

А его использование дает хорошее упрощение программы в ряде областей.

нет, не даёт. вернее в одном месте он упрощает, в другом сильно усложняет. упрощает - меньше надо печатать, но ведь код чаще читают, чем пишут, да? усложняет - 1) устанешь собирать его под разные платформы, особенно с его велосипедной системой сборки; 2) если вдруг столкнёшься с багом в бусте, то придётся обратиться к тем самым израильским внутренностям, вспомнишь всех родственников разработчиков и наконец-то поймёшь о чём тебе говорят

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

устанешь собирать его под разные платформы, особенно с его велосипедной системой сборки;

Ты не осилил собрать буст? Пипец...

2) если вдруг столкнёшься с багом в бусте, то придётся обратиться к тем самым израильским внутренностям, вспомнишь всех родственников разработчиков и наконец-то поймёшь о чём тебе говорят

Давай оперировать мат. ожиданием потерь времени на это, а не рассказами «а если». За пару лет не приходилось иметь дела с багами ни разу.

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

Ты не осилил собрать буст? Пипец...

ты сам-то осилил? например кросс-компиляция под qnx на big-endian arm используя bjam? расскажи историю успеха

За пару лет не приходилось иметь дела с багами ни разу.
За пару лет

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

но раз не сталкивался, то и ладно, я тебе не желаю сталкиваться в дальнейшем. а если столкнёшься - всё сам поймёшь.

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

Оно тащит за собой consolekit, polkit и udisks. Фи, поттерингщина! Окропить напалмом!

Где поттерингщина? Ты упорот по самые уши.

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

например кросс-компиляция под qnx на big-endian arm используя bjam?

Живо представляю. я думаю, с такими таргетами много чего весело собирается.

Не, в буст я лазил на поинтересоваться. Только по поводу багов не еще доводилось.

Pavval ★★★★★
()
Последнее исправление: Pavval (всего исправлений: 1)
Ответ на: комментарий от Pavval

Еще раз - твой опыт односторонний.

«Не участвовал в написании говнокода» == «Односторонний опыт». Ok.

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

Караван-то, между прочим, в пропасть катится. А мы полаем и вас ещё переживём.

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

А что, программист не может свои подставить?

Это стало сложно :) Если хоть где-то используется что-то дефолтное, велика вероятность, что в следующем релизе это перестанет работать.

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

В генточке

В генточке есть юзе-флаги. Попробуй, некоторым нравится.

Ну то, что автор поделия не он ничего не меняет...

Рожей об пальму. Это надо записать. Во! Я все встреченные в интернетах наиболее идиотские фразы буду называть «лавосизмами», а кто там настоящий автор, пофигу.

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

не видел на мобилах ни разу нормальный лилух. андроид говно редкостное, которое не работает а только тормозит. всякие тизены(титизены), салофишы и прочее дерьмо пока что только дерьмо. я поменял винфон на андроид и пожалел +100500 раз. сервера наюх не упали миллионам пользователей. им как раз таки подавай десктопную ось. а лялихи и униксы всякие нихрена не могут позиционироваться, как десктопные ОСи. понасоздавали всяких WM/DM, файломанагеров, бровзеров, асечек и сисечек, тулкитов и прочей мути, но почему-то все выглядет убого и работает так же. и не надо говорить типа бери сам и делай. нах... не упало заниматься подобным бредом. весь мир ляликсов хваленых(дерьмовых) это форки. форк на форке форком погоняет.

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

Не, ну когда systemd уже была, а logind ещё не было, Лёня в ConsoleKit даже пару коммитов оставил. К polkit и udisks2 он, действительно, ни малейшего отношения не имеет.

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

школьнэг будет решать что закапывать? лол не позорься дурачок.

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

На крестах писать не надо. Закапывать их пора давно. Golang, очень надеюсь, с этим справится.

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

Детектирую в тебе быдло.

Нет, он провокатор, а ты ведёшься.

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