LINUX.ORG.RU
ФорумTalks

Для каждой платформы — по заслугам ее

 , ,


1

1

У каждой платформы свои традиции в отношении гуев, лицензии и платности.

  • Linux-based - бесплатно, открыто, иногда свободно, GPL/MIT/Apache. Интерфейс «сделейте меня развидеть это» на GTK и Qt, ШГ.
  • Винда - платно и условно бесплатно (демки, триалы, «облегченные» версии), закрыто, EULA. Интерфейс приличный на вендофреймворке (winapi, windows forms, windows presentation foundation) и неприличный на HTML5/JS, ШГ с cleartype.
  • Мак - сурово платно (или сурово халявно BSD/MIT/Apache). Интерфейс отличный на макофреймворке, Ш не Г. GPL considered harmful.

Чтобы сделать кроссплатформенную прогу и никого не обидеть, надо что-то общее выделить.

Вот что надумалось:

  • Платность: платно по усмотрению автора. На Linux-based - бесплатно, на свиндовсе - по-разному (демки, «облегченные» версии), на маке - только платно. Каждой платформе — по делам и словам ее.
  • Открытость: EULA по которой код и ресурсы полностью открыты на чтение, но без возможности использования. Для использования нужно предварительное письменное или электронно-письменное разрешение. В том числе для совместимости с политикой Apple. Из «совместимых» лицензий - MIT/BSD/Apache, LGPL в случаях когда вообще не обойтись без нее. Для пущего эффекту — выложить на гитхабе в режиме «только для чтения».
  • Открытость участия: коммиты принимаются, но с отчуждением авторства. Коммитер подписывает бумажку, по которой он передает все права кроме собственно авторства авторам проекта, имя автора коммита остается в исходниках или на доске почета (в случае, если код автора окончательно выпилен из проекта - чтобы о нем осталась память). В случае использования гитхаба, pull requests рассматриваются, но отзываются (чтобы не накосячить с юридическими тонкостями).
  • Платформа/язык/интерфейс: Платформа - нативная, гуй - нативный, логика - кроссплатформенная на C++, C#, Java, Python, JS. В запущенных случаях - полностью кроссплатформенные комбинации из набора: Qt/C++/Qt | Mono/C#/GTK# | Java/JVM-based(Java,Scala,Clojure)/SWT,(HTML5/CSS/JS) | Python/Python/GTK,(HTML5/CSS/JS) | %browsername%,qtwebkit,nodejs/JS/(HTML5/CSS/JS)

Устраивает ли дам и господ сего форума такой расклад? Никто не будет кричать «мои права ущемили»?

Что хотел спросить: посоветуйте хороший пример практики «отчуждения коммитов». Лицензию. Описание механики и юридических тонкостей, если есть. Говорят, в OpenOffice так делали.

★★★★☆

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

Интерфейс «сделейте меня развидеть это» на GTK и Qt, ШГ.
Интерфейс приличный, на вендофреймворке (winapi, windows forms, windows presentation foundation)

4.2 Язабан

Dragon59 ★★
()

Ты только что убедил меня ещё раз что кроплатформенность не нужна.

Hertz ★★★★★
()

Гламур головного мозга?

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от geekless

Допустим, написал ты панельку управления задачами.

Хочешь портировать на iPhone (там уже появилась многозадачность?), а фигушки — ты использовал %libname%, а %libname% под GPL, а GPL запрещена в яблосторе. Давай досвиданья и бан за нарушение правил.

Или, хочешь портировать под Windows. А написана она на... допустим, на GTK. А GTK под виндой выглядит как говно, да еще и не нативно (не вписывается в общее оформление). Люди смотрят на это непотребство и удаляют. (хотели бы еще и развидеть, но what has been seen can't be unseen).

stevejobs ★★★★☆
() автор топика

Интерфейс приличный на вендофреймворке

Интерфейс отличный на макофреймворке, Ш не Г.

Слишком много жира, не взлетит.

Homura_Akemi
()

Ш не Г

В макоси - ШГ. Лучшие шрифты сейчас в убунте, а Джобс вечно себе все возможные заслуги приплетал. Больше не приплетает. Улавливаешь?

А вот первый пункт мне нра)))) Только взлетит лишь если и писать программу тоже под линуксом для всех трёх.

Открытость участия: коммиты принимаются, но с отчуждением авторства

Есть опасность, что какому-нибудь FSF захочется перелицензировать всё резко под хорошей в общем, но непродуманной в данном случае лицензией, как это было с gcc и GPL v3. Вот Nokia и KDE этот вопрос хорошо решили - договор, по которому в случае прекращения нокией (или её приемницей) разработки Qt или перелицензирования KDE имеет право использовать исходники Qt под любой свободной лицензией, включая BSD, и продолжить разработку без ребрендинга. И сейчас коммиты в экосистему Qt отходят к Nokia (а может уже и к Digia).

Платформа/язык/интерфейс: Платформа - нативная, гуй - нативный,

Глупо. Qt в макоси выглядит отлично (взять хоть QtCreator), swing по крайней мере раньше выглядел хорошо - пока об этом Apple заботился. У EFL тоже гибкий UI, но на практике это похоже ещё никем не проверялось.

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

С виндофреймворками то же самое - в плане страшности тоже. Только Qt думает о людях, не желающих писать UI трижды, вроде бы ещё в EFL нужные задатки есть.

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

С виндофреймворками то же самое - в плане страшности тоже.

Виндофреймворки работают только на винде и на ней выглядят отлично.

Reset ★★★★★
()

Мак - сурово платно (или сурово халявно BSD/MIT/Apache). Интерфейс отличный на макофреймворке, Ш не Г. GPL considered harmful.
Ш не Г

Да вы упоролись.

andreyu ★★★★★
()

Винда … Интерфейс приличный

Видимо ты давно не видел среднестатистическую виндовую программу.

Платность: платно по усмотрению автора. На Linux-based - бесплатно, на свиндовсе - по-разному

XChat и многие другие программы так и распространяются.

Открытость: EULA по которой код и ресурсы полностью открыты на чтение, но без возможности использования

Шёл бы ты отсюда, петушок.

Открытость участия: коммиты принимаются, но с отчуждением авторства.

Шёл бы ты отсюда, петушок.

C++, C#, Java, Python, JS

Не нужно, совсем не нужно, не нужно, не очень нужно, не нужно.

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

если под «любой свободной», то есть опасность, что кто-нибудь форкнет и сделает халяву на макоси. Это не mac way. Все «свободные» опции должны быть доступны только на линуксах.

stevejobs ★★★★☆
() автор топика

Интерфейс «сделейте меня развидеть это» на GTK и Qt

Интерфейс приличный на вендофреймворке

Есть ложь, есть наглая ложь, есть статистика, а есть продукция пропаганды microsoft.

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

существование gtk оправдывает только наличие gimp, geany и claws-mail. используйте qt — экономьте экранное место.

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

Только Qt думает о людях, не желающих писать UI трижды

и, как ни странно, Qt приложения не выглядят в системе родными, просто это не так бросается в глаза, как у GTK.

maloi ★★★★★
()

Винда... Интерфейс приличный...

Интерфейс приличный это когда всё понятно что где находится и не возникает мыслей «Куда я попал?!»

Мак... Интерфейс отличный на макофреймворке...

Криетрий отличности — количество блестяшек? Я угадал?

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

Хочешь портировать на iPhone

Зачем?

А GTK под виндой выглядит как говно, да еще и не нативно (не вписывается в общее оформление).

Виндузятники должны страдать.

Xenius ★★★★★
()

Для Ъ: ТС не осилил настроить шрефты, и ударился в демагогию.

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

есть опасность, что кто-нибудь форкнет и сделает халяву на макоси. Это не mac way. Все свободные опции должны быть доступны только на линуксах.

Или смириться с тем, что кто-то может форкнуть или с тем, что код будет несвободным.

Впрочем как вариант, сделать полностью свободную версию для X11, плюс фронтенд для кварца...

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

Qt приложения не выглядят в системе родными

Разумеется, ведь они выглядят лучше родных.

quiet_readonly ★★★★
()

У каждой платформы свои традиции в отношении гуев, лицензии и платности.

бред сивой кобылы

xtraeft ★★☆☆
()

Интерфейс «сделейте меня развидеть это» на GTK и Qt, ШГ.

к окулисту

Интерфейс приличный на вендофреймворке

два раза

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

Портировал это на windows, работает, выглядит нормально.
ЧЯДНТ?

Считаешь, что оно выглядит нормально.

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

Хочешь портировать на iPhone

так ты про мак или про что?

Люди смотрят на это непотребство и удаляют

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

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

Криетрий отличности — количество блестяшек? Я угадал?

Блестяшки — это как раз про линукс. В макоси как раз все строго и достаточно аскетично.

urandom
()

Забавно, сколько баттхерта вызвал этот пост. Потому что практически все верно.

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

Чем докажешь?

Тормозами и страшным интерфейсом.

И что тогда объектное не УГ?

Любой ЯП, позволяющий получить нормальный бинарник.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от PolarFox

Не нужно, совсем не нужно, не нужно, не очень нужно, не нужно.

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

Код на C в большинстве своём многословен, течёт без покрытия тестами на 146% и не поддаётся усилиям авторов IDE.

А ещё элитка невменяема и не понимает, что языки C++, C#, Java, Python, JS быстры, хороши и удобны прежде всего благодаря огромному коммьюнити, вниманию и наличию хороших инструментов. У какого ещё языка, кроме javascript, смогли так вылизать производительность без потери фич? Кто ещё, кроме python, имеет биндинги на всё что движется? У кого, кроме C#, есть армия кодеров, не испорченных емаксами и желанием всё настраивать/пересобирать?

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

Тормозами и страшным интерфейсом.

Swing, как и всякий фреймворк, следует затачивать под платформу. Для swing это в своё время делала Apple - хоть и только для макоси; сейчас же только убунта старается туда поддержку global menu и HUD добавить. Для Qt такое делают авторы Qt, ибо они понимают свою суть глубже, чем авторы swing свою.

Тормоза устраняются выносом тяжёлого кода в библиотеку на компилируемом языке, с последующим вызовом из медленной java. Или хотя бы многопоточностью. Увы, властью повлиять на мозги кодеров обладают только Sun/Oracle и авторы eclipse, netbeans, idea. Но они слишком уверены в превосходстве своего божественного творения над бренными поделками окружающих.

Любой ЯП, позволяющий получить нормальный бинарник.

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

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

C++

Этот язык от С мало чем отличается в плане надёжности. Но при этом отличается он явно не в лучшую сторону.

C#

Сомнительный лицензионный статус.

Java

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

Python

Не тормозит ещё пуще жабы. Убедиться можно запустив центр приложений убунты.

JS

Однопоточный уродец с не самым лучшим синтаксисом и большим количеством wtf-поведения.

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

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

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