Почему моно так спорно?

Часто, когда я читаю о какой-то программе, будь то GNOME Do или Banshee или что-то еще, я вижу людей, пишущих, что они используют моно - и это отрицательно. Почему это? Эти комментарии сделаны на практической основе, идеологических или что-то еще?

33
задан 29 October 2010 в 11:48

5 ответов

Идеологически

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

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

Практически

Программы, которые используют виртуальную машину (как написано на Java и C #), имеют тенденцию использовать больше памяти, по моему опыту, по сравнению с аналогами, которые не делают. Это обобщение не всегда верно. Хотя есть пользователи, для которых это является серьезной проблемой, люди часто беспокоятся о производительности больше, чем необходимо.

Например, я использую ноутбук только с 1 ГБ памяти: раньше это было огромно. Машина начинает показывать свой возраст, но я все равно могу комфортно управлять большинством вещей. Пользователи с 4 ГБ памяти почти не заметят "скачки памяти" и должны сосредоточиться на других проблемах. (И я вернусь сюда через 5 лет и посмеюсь над этим номером 4 ГБ.)

0
ответ дан 29 October 2010 в 11:48

Как уже говорили другие, есть две основные причины:

1) Идеология: пользователям не нравится идея, что Mono основан на продукте Microsoft с закрытым исходным кодом. Тем не менее, Mono сам с открытым исходным кодом.

2) Патенты. Раньше это было серьезной проблемой, которая с тех пор была решена Microsoft, когда они применили Promise Community к спецификациям ECMA 334 и ECMA 335. К сожалению, значительная часть людей не знает о это.

0
ответ дан 29 October 2010 в 11:48

Я не использую Mono, потому что

  1. Microsoft заявляет о нарушении IP без указания того, что нарушается, и они отказались разъяснять Mono, только говоря, что пользователи Novell защищены. Я не верю обещаниям сообщества Microsoft, пока они не подкрепят его действиями.
  2. Моно лицензирование является сложным. Юридическому эксперту трудно, не говоря уже о обычном пользователе, понять, как части лицензируются по-разному. Ничто в открытом коде не так сложно понять.
  3. Мигель де Иказа пообещал, но не выполнил свое обещание своевременно выпустить совместимый с ECMA исходный код.
  4. ландшафт изобилует компаниями, следовавшими стандартам Microsoft, потому что для них существуют стандарты, которые нарушаются и держать других в невыгодном положении
  5. нет необходимости или очевидной выгоды иметь .NET в Linux, мало что перенесено с других платформ и все, что является родным для Linux, может быть написано на других языках
  6. Mono бесполезный спор; это отвлекает нас и играет на руку Microsoft, уклоняясь от более важных вопросов

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

0
ответ дан 29 October 2010 в 11:48

Некоторые люди считают, что Microsoft имеет патенты на программное обеспечение в отношении аспектов .NET, и что, как реализация .NET, Mono нарушает эти патенты. Таким образом, эти люди чувствуют, что использование Mono может оставить открытым для патентных исков.

Я полагаю, что Mono настолько противоречив, потому что патентное право в целом противоречиво. Но есть и конкретные случаи, когда организации, занимающиеся продвижением Mono, заключили с Microsoft соглашения, которые во многом похожи на патентные соглашения, что в дальнейшем может усилить аргумент Microsoft в отношении действительности любых таких патентов. (Конечно, Microsoft фактически не предоставила никаких доказательств того, что патенты существуют, таким образом, сохраняя состояние неопределенности, так же как и в случае их претензий на патенты, нарушенные ядром linux.) Эти соглашения вызывают чувство предательства и недоверия со стороны других сообществ. членов, потому что соглашение, кажется, наносит ущерб сообществу в целом (увеличивая предполагаемый патентный риск), принося пользу организации, заключившей соглашение с Microsoft. Так что это приводит к еще одной причине, по которой Mono является спорным: потому что некоторые из основных сторонников Mono заключили спорные соглашения с Microsoft.

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

Редактировать: В комментариях кто-то указал, что у Microsoft есть обещание сообщества не отстаивать патентные права на реализации .NET. Но в обещании достаточно юридического, так что я не могу быть уверенным, что обещание обеспечивает надежную защиту, не нанимая адвоката. Прочитав его, я могу вспомнить некоторые потенциальные лазейки, которые могут позволить Microsoft отстаивать патентные права на Mono, но после IANAL я понятия не имею, являются ли какие-либо из этих лазеек юридически оправданными, или просто мое недопонимание Microsoft легальный. Таким образом, хотя обещание сообщества обнадеживает, оно, конечно, не может положить конец спорам о возможной патентной ответственности Моно.

0
ответ дан 29 October 2010 в 11:48

Mono является открытым портированием Microsoft .net.

На идеологической основе это использует закрытую технологию для открытых технологий, и это может не совпадать с некоторыми идеалами GNU и / или Linux.

С практической точки зрения, Mono (на данный момент) не поддерживает столько функциональных возможностей, как .NET в своей версии 3.5. Тем не менее, он позволяет программировать на C # (и других языках .NET) для Linux, что, на мой взгляд, хорошо и было бы невозможно без Mono.

0
ответ дан 29 October 2010 в 11:48

Другие вопросы по тегам:

Похожие вопросы: