LINUX.ORG.RU

На чём нынче кошерно пилить опенсорс кроссплатформу?

 , , ,


0

3

Я не раз натыкался на мнение, что электрон - это зло и жрёт память. Джава - тоже зло. Как и шарпец. Есть ещё кутэ - но не в теме, насколько это норм. Расскажите, так на чём же кошерно нынче запилить кроссплатформенное десктопное опенсорс приложение так, чтобы коммьюнити не стало на него плеваться?

Deleted

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

Я про сравнение либ. Одни либы в топе, другие редко используемые. На топовых писать UI меньше риска, чем на хрен знает чём.

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

Ну ок. Только по моему твой ответ куда-то в сторону укатил.

rumgot ★★★★★
()

Нормально Вы так вбросили... =)))

Зависит от основного языка, на котором пишете. Если С, то я бы выбрал GTK+. Под оффтопика он тоже есть в msys/2 или как там у них это называется.

Если С++, то лучше Qt. Хотя, сейчас уже в пору говорить не столько о программировании на С++ применительно к Qt, сколько именно о «программировании с Qt».

Как с остальным я без понятия. И да:

чтобы коммьюнити не стало на него плеваться?

Об этом можно сразу забыть.

Единственное только что добавлю, если есть возможность сразу создавать веб-аппликуху, то лучше бы её сразу и делать. Без десктопных разборок. Тогда и ведроид и Sailfish OS и всё что заблагорассудится.

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

место-то под неё придётся высвобождать, но не нужно

проблема занимаемого места от флэтпаков мной недооценивалась, пока не стало известно, что народ массово раскупает железо типа https://market.yandex.ru/product--noutbuk-irbis-nb116/39068299, где ssd на жалкие 32 гига

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

и вот этот самый вебэнджин как раз и собирается три часа на i7

Фигасе, это много? о_О Теперь я понимаю, как люди на генте живут. А то на моей затычке даже ядро два часа собирается.

и использовать EFL, например

Есть же уже WebKit-поделка на EFL, чем не ня? Пистонятиной?

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

Дак того хуже, в современных недобуках до сих пор 2–4 ГБ рамы, я хз, в каком манямирке живут нынешние софтоделы, которые вконец перестали раму экономить и компенсируют ею всё подряд.

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

пришлось лазить в гугле

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

зачем она в графической оболочке.

не надо это тащить в одну библиотеку

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

для работы с xml есть множество библиотек и все фичи должны быть там

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

Во-вторых, да, библиотеки есть, libxml2, например, или win-чтототам (напомню, тред о кроссплатформенных инструментах), но иметь решение «в одном флаконе» бывает нужно, тем более, когда речь о высокоуровневых инструментах, типа Qt.

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

Qt, внезапно, тоже жрет псмять

Меньше, чем электрон.

без QML мусора

На культях тоже. Взгляни на telegram-desktop хоть: там современный UI и при этом никакого QML.

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

последнему для работы нужно минимум 1GB RAM

4.2.

bq:18:12:39:/tmp/dl$ ps aux|grep skypeforlinux|col6
828
76992
6220
161072

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

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

svinarenko
()
Ответ на: комментарий от I-Love-Microsoft

А оно что, к D прибито совсем?

Хбз, сам пока изучаю.

Hertz ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

лицензионные претензии к Qt уже почти 10 лет являются неактуальными

Я что-то пропустиле, коммерческую версию уже закопали?

svinarenko
()

Расскажите, так на чём же кошерно нынче запилить кроссплатформенное десктопное опенсорс приложение так, чтобы коммьюнити не стало на него плеваться?

Сначала реши, что важнее: что упоротые фанатики будут плеваться, или что ты сам будешь плеваться в процессе разработки

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

глюками на каком-нибудь встроенном amd radeon

Пхех, нету аппаратного ускорения => нету видеокартопроблем.

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

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

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

на i7-6500U на трёх ядрах культя собирается примерно часа три.

и зачем собирать _всё_ (и примеры и вебкит и т.п.) ?
менее получаса на i3 основное либы собираются

SDD просто убьётся постоянными сборками.

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

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

На JS можно UI делать

Только если целиком используя canvas или webgl. Другого ui в Js нет - DOM редкостное говнище с небоскрёбом костылей.

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

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

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

Максимально просто - это объекты виджетов у Борланда, с ссылками на функции/обработчики в свойствах. Wx, кстати, такой же.

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

То есть, я правильно понимаю, что весь десктоп на лине завязан на фреймворк от коммерческой конторы?

То, что в своё время практически весь линукс был завязан на коммерческую контору (Red Hat) тебя не смущает?

Базовая лицензия у Qt - LGPL. Для «десктопа на лине» это достаточно. То, что сверх, нужно для того, чтобы кутешники могли зарабатывать деньги.

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

Какие проблемы с какой либой? Ты будешь решать проблемы какой-то либы/тулкита не написав и строчки кода? Какие вы проблемы высасываете из пальцев ничего не написав, одни сферические кони в вакууме.

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

На JS можно UI делать без QML мусора, в отличие от культей.

На Qt можно UI и ещё много чего делать без QML- и JS-мусора, в отличие от электрона.

Починил, не благодари.

Вообще, когда люди ругают «монструозный » Qt и тут же нахваливают электрон - я ржу в голос.

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

Я таки скромненько напомню исходное сообщение:

Не шлангуй. Несколько лет назад культи в браузеры пихали только так. ... Очень показательно, что последнее время все популярные программы перешли или переходят на GTK3.

Когда у тебя после этого попросили списочек программ, перешедших на GTK3, ты назвал программы, перешедшие... с GTK2 на GTK3.

Так кто, говоришь, шлангует?

hobbit ★★★★★
()
Ответ на: Так ты за новый браузер? от sqq

Или допил NetSurf-a планируешь?

Я, кстати, напомню, что NetSurf — это модульный проект, у которого GTK - всего лишь один из вариантов UI, хоть и наиболее известный.

hobbit ★★★★★
()

Расскажите, так на чём же кошерно нынче запилить кроссплатформенное десктопное опенсорс приложение так, чтобы коммьюнити не стало на него плеваться?

Люди делятся на тех кто болтает и тех, кто дело делает (и эти множества не пересекаются). Плеваться будут балаболы, тебе на них должно быть насрать. Нужно ориентироваться на пользователей твоего продукта. Иначе придется писать на Хаскеле и Rust, но даже в этом случае балаболы найдут до чего докопаться.

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

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

Нафиг пользователи?

Надо о бабосах думать.

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

Да там много чего надо выпиливать кроме gtk, glib и openssl

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

в ядре - смотря что ты сконфигурил. если ты сконфигуришь только нужное тебе железо, то оно соберётся вообще минут за 5. а дженерик конфиги собираются долго, но там 90% ненужных тебе драйверов железа, всяких протоколов и ФС.

в генте большие обновления не так часты, хотя тоже бывают. много пересобирать, когда меняются мажорные версии базовых библиотек (libc/musl), но это случается редко.

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

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

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

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

может даже излишне, для некоторых задач.

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

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

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

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

Iron_Bug ★★★★★
()
Последнее исправление: Iron_Bug (всего исправлений: 2)

Надо писать на жабе или котлине, чтобы плевались все, но в равной степени. Я бы еще написал про шарп, но с кроссплатформенным GUI там попа.

Я сейчас кстати почти серьезно.

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

KISS — оно, конечно, правильно, но

чем больше связей - тем хуже всё это работает

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

не для некоторых, а для всех

Тут я категорически не согласен, поскольку речь была об уровне абстракции, реализуемого инструментом.

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