Часто, коли я читаю про якусь програму, будь то GNOME Do чи Banshee чи щось інше, я бачу людей, які пишуть, що вони використовують моно - і наслідки є пейоративними. Чому це? Ці коментарі зроблені на практичних засадах, ідеологічних чи щось інше?
Часто, коли я читаю про якусь програму, будь то GNOME Do чи Banshee чи щось інше, я бачу людей, які пишуть, що вони використовують моно - і наслідки є пейоративними. Чому це? Ці коментарі зроблені на практичних засадах, ідеологічних чи щось інше?
Відповіді:
Моно деякі вважають, що вони підтримують Microsoft та її платформу .Net. Деякі люди вважають, що це суперечить цілям Ubuntu або, принаймні, власним особистим цілям, і вони хочуть цього уникнути.
Вибачте за хитання слів, але я залишаюся об'єктивною. Дискусія про те, чи справді Mono робить це, і навіть, чи підтримувати Microsoft це добре чи погано, належить деінде .
Програми, які використовують віртуальну машину (як ті, що написані на Java і C # do), як правило, використовують більше пам'яті, на мій досвід, порівняно з еквівалентами, які цього не роблять. Це узагальнення не завжди вдається. Хоча є користувачі, щодо яких це справді викликає занепокоєння, люди часто турбуються про продуктивність більше, ніж потрібно.
Наприклад, я використовую ноутбук з лише 1 Гб пам'яті: це раніше було величезно. Машина починає показувати свій вік, але я все ще можу зручно керувати більшістю речей. Користувачі, які мають 4 Гб пам'яті, не помітять «качанів пам’яті» майже стільки ж, і повинні зосередитися на інших проблемах. (І я повернусь сюди через 5 років і посміяюся з того 4 Гб.)
Деякі люди вважають, що Microsoft має патенти на програмне забезпечення на аспекти .NET, і що, як реалізація .NET, Mono порушує ці патенти. Таким чином, ці люди вважають, що використання Mono може залишити один відкритий для патентних позовів.
Я думаю, Моно настільки суперечливий, оскільки патентне законодавство взагалі суперечливе. Але існують конкретні випадки, коли суб'єкти, які просувають Mono, укладали договори з Microsoft, схожі на патентні угоди, які потім можна було б зрозуміти, щоб посилити аргумент Microsoft щодо дійсності таких патентів. (Зрозуміло, Microsoft насправді не надала жодних доказів існування патентів, таким чином підтримуючи стан невизначеності, як і заява про патенти, порушені ядром Linux.) Ці угоди призводять до почуття зради та недовіри з боку іншої спільноти членів, оскільки, здається, угода завдає шкоди громаді в цілому (збільшуючи сприйнятий патентний ризик), приносячи користь суб'єкту господарювання, який уклав угоду з Microsoft. Тож це призводить до ще однієї причини, що Mono суперечлива:
До речі, слід зазначити, що я пишу з точки зору глядача, і я не маю детальних чи конкретних знань про всю ситуацію. Я намагався залишатися неупередженим і в основному ухилявся від власних іменників, щоб уникнути втягування цього питання в полеміку, про яку він запитує.
Редагувати: У коментарях хтось зазначав, що Microsoft обіцяє спільноті не стверджувати патентні права проти впровадження .NET. Але в цій обіцянці достатньо легального, що я не відчуваю, що я справді можу бути впевнений, що обіцянка забезпечує повітрозахисний захист, не наймаючи адвоката, щоб переходити над цим. Прочитавши його, я можу придумати деякі потенційні лазівки, які могли б дозволити Microsoft стверджувати патентні права на Mono, але, оскільки IANAL , я не маю поняття, чи є якась із цих лазів юридично захищена, або це лише моє непорозуміння легалізації Microsoft. Тому, хоча обіцянка громади є обнадіюючою, вона, безумовно, не може закінчити суперечку з приводу можливої патентної відповідальності Mono.
Mono - це відкрита портація Microsoft .net.
З ідеологічного підґрунтя це використовує закриту технологію відкритих технологій, яка може не збігатися з деякими ідеалами GNU та / або Linux.
З практичної точки зору, Mono наразі не підтримує стільки функціональних можливостей, скільки .NET робить у своїй версії 3.5. Однак це дозволяє програмувати на C # (та інших мовах .NET) для Linux, що, на мою думку, є доброю справою і було б неможливим без Mono.
Як зазначають інші, існують дві основні причини:
1) Ідеологія: Користувачам не подобається думка, що Mono базується на продукті Microsoft із закритим джерелом. Однак сама Mono є відкритим кодом.
2) Патенти: Це раніше було основною проблемою, з якою Microsoft зверталася, коли вони застосовували Обіцяння спільноти до ECMA 334 та специфікацій ECMA 335. На жаль, значна частина людей про це не знає.
Я не використовую Mono тому, що
Я думаю, що Mono може і повинен використовувати Mono, якщо вони хочуть, але користувачі, які цього не хочуть, не повинні мати його за замовчуванням.