LINUX.ORG.RU

«Почему Mono хорош» - Перевод статьи Джо Шилдза (Jo Shields) «Here we go again – why Mono doesn’t suck»

 , , ,


0

0

На сайте русскоязычной социальной сети open-life.org, посвященной СПО, опубликован перевод статьи Джо Шилдза (Jo Shields) «Here we go again – why Mono doesn’t suck» - "Почему Mono хорош"

В статье автор отвечает на следующие вопросы:

  •  Чем Mono хорош?
  •  Почему Mono не опасен? Почему низка вероятность патентной войны?
  •  Почему Mono должен быть включен в Ubuntu по-умолчанию?
  •  Что такое анти-Mono движение?
Рекомендуется к прочтению всем: и сторонникам Mono, и противникам.

>>> Перевод статьи



Проверено: Shaman007 ()

>Рекомендую к прочтению всем: и сторонникам Mono, и противникам.

сходил по ссылке, получил вот что:

�x^�}k�ՙ�g��!i&�T]}�]� B�-���KL(����˪�ꩪ����c/ Dz.��Y����!�@G� ��� �>��'�dVfw��x�ϮQuU�9�y�s�c>u�䅿|�T�:\�$Ͻ���3'��Z�����z� O%� ϜMf�g���~{iX��zv*� Z׏��W�\��2?���/<_��Qf�� ��ts؜Zx�1Mru���

из прочтения ТАКОГО сделал вывод mono - зло

ЗЫ: браузер midori

Sith ★★★★★
()
Ответ на: комментарий от zero-1-2-3

>Человек просит отвертку, ему предлагают шило. Выбирает внедорожник, а ему подсовывают оку... Не хорошо, товарищи линуксисты, поступаете.

А почему ви беспокоитесь о другом человеке? Он таки сам может за себя постоять (тем более, что случаев смерти из-за предложения использовать The Gimp зафиксировано не было).

vigilante
()

Пока тут не начали обсуждать достижения СССР или ядерную физику, спрошу: Mono действительно не так сильно зависит от технологий Microsoft, как мне показалось из эссе?

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

> QT и GTK

Не надо сравнивать теплое с мягким. Qt - фреймворк, которык покроет 99% потребностей программиста и позволит создать кроссплатформенное приложение без танцев с бубном, а GTK+ всего лишь библиотека интерфейса. Про сопутствующие мелкие библиотеки знаю.

Кстати не стоит это выделять как плюс, ибо и Qt поделен на модули аля Core, Gui, Network, XML и т.д. В Debian на соответствующие пакеты разбит.

Если забыть о кривом дизайне GTK+ (крышесносящий API) и об отстование в производительности... Да еще и вспомнить про кучу библиотек, которые не все портированы абсолютно на все платформы... В принципе его можно рассматривать как альтернативу Qt.

zero-1-2-3
()

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

A-234 ★★★★★
()
Ответ на: комментарий от vigilante

>в тех же сях, вызвал free() - и память тут же свободна, а с GC надо ждать, пока за тебя почистят память

Да в общем нет - либо аллокатор медленный либо фрагментирует память. А фрагментированная память в общем мало чем отличается от полностью занятой.

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

> А почему ви беспокоитесь о другом человеке? Он таки сам может за себя постоять (тем более, что случаев смерти из-за предложения использовать The Gimp зафиксировано не было).

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

zero-1-2-3
()
Ответ на: комментарий от Absurd

>Да в общем нет - либо аллокатор медленный

Ну это ясно - мгновенно не происходит. Просто время, требующееся на вызов free(), много меньше времени ожидания срабатывания GC.

>либо фрагментирует память.


А это уже зависит от реализации аллокатора памяти, используемого в системе.

vigilante
()

> т.к. WinForms похожа на задницу, между прочим

Бгы-гы-гы!!! А мона не нужна. Есть достаточное количество более других языков.

one_more_hokum ★★★
()
Ответ на: комментарий от zero-1-2-3

>А я человек-медведь. Слежу за справедливостью в рунете.

http://xkcd.com/386/

>Gimp с его окнами расползающимся по всему экрану и распологающимся в разных слоях может и убить с похмелья.


У меня ничего не расползается. ЧЯДНТ? Может быть, не сижу за компом с похмелья?

vigilante
()

Джо Шилдз толст

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

> станете ли вы покупать мобильник и носить в штанах, если есть вероятность 1 / 1,000,000, что он взорвется и оторвет вам яйца?

Вероятность быть сбитым машиной, переходя через дорогу (даже на зелёный) -- заметно выше. Тем не менее, я с завидной регулярностью перехожу через дорогу.

one_more_hokum ★★★
()

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

stave ★★★★★
()

«Doesn’t suck» и «хорош» — не одно и то же.

Sphinx ★★☆☆
()

Кстати, мне никто так и не ответил, как работает моновский GC, если он там присутствует, а памяти требует меньше чем виртуальная машина?

Karapuz ★★★★★
()

Он идиот! Python лучше! Ну и что, что немного медленее(про сотни раз он загнул!) зато гораздо гибче и удобнее.

stalkerg ★★★★★
()
Ответ на: комментарий от zero-1-2-3

> Gimp с его окнами расползающимся по всему экрану и распологающимся в разных слоях может и убить с похмелья.

Мы тут win не пользуем, потому каждая программа занимается своим делом. gimp не должен управлять окошками - это дело WM. Вот его и смените на вменяемое. Из-за таких как вы нас gimp-овцы пугают что переделают интерфейс на PS подобный. Расстреливать вас нужно, а мы ещё и уговариваем. (c)

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

>Самый человечный язык - Си, всё иное крамола и искажённая пародия.

Слова Ъ-фанатика. Читать про полиморфизм и инкапсуляцию до полного просветления.

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

Хто такой Шибзд? И почему я более знаю RMS, чем его? И кто основатель свободного движения Шибзд что-ли? Прав тот у кого меньше права на ошибку. У RMS этого права вообще никогда не было.

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

>У меня такой вопрос к сторонникам моны: станете ли вы покупать мобильник и носить в штанах, если есть вероятность 1 / 1,000,000, что он взорвется и оторвет вам яйца?

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

учите математику, уважаемый.

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

>Ниосил цветовые профили стянуть из NX и подсунуть ufraw?

А зачем мне это осиливать? Я подобной фигнёй занимался в студенческой юности. А сейчас мне на работе хватает ковыряния и программирования в Linux. А дома я хочу просто расслабиться и получать удовольствие:)

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

>Слова Ъ-фанатика. Читать про полиморфизм и инкапсуляцию до полного просветления.

Не тебя меня учить ООП. Я иисал и на Java и на С++ (прочтя несколько раз Страуструпа) и мощь Си в том, что можно писать на ООП так, как сам считаешь нужным, а не в рамках за тебя придуманной жёсткой модели ООП. В Java нет множественного наследования, в С++ свои косяки в реализации. Только красноглазые пионеры могут выуча один язык с пеной у рта доказывать, что он есть единственно верный т.к. в нём много синтаксического сахара.

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

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

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

> .Net - не язык:)

Скажите ТЕХНОЛОГИЯ, всем слаще будет. А тем не менее, в используемом контексте обсуждения, всё что напрямую не исполняется на процессоре это язык. Всё что интерпретируется это язык. переходной он там или почти опкоды, всё что 'почти' - язык.

Да и java, mono, фурсенко апстенку!

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

>мощь Си в том, что можно писать на ООП так, как сам считаешь нужным, а не в рамках за тебя придуманной жёсткой модели ООП.

Ну-ка, расскажи подробнее. Ты это про костыльки вроде GObject? Если это - красиво и гибко, то могу лишь посочувствовать.

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

у java только 6 примитивных типов которые можно размещать в стеке. байт, шорт, int, float, double, char. причем все знаковые. все остальное, объекты которые размещаются в хипе, где за ними приглядывает GC.

в .net таких "как бы примитивных типов" неограниченное количество, есть понятие структуры, они располагаются в стеке, и их не видит GC.

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

также генериковые коллеции позволяют использовать примитивные типы и структуры, а не их объекты-обвертки. итого в памяти GC только один обьект - список, а не список + объекты-обвертоки. и т.д.

а в плане работы GC .net не сильно отличается от java. те же поколения объектов..

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

> учите математику, уважаемый.

Учите физику, уважаемый. А если у него NiMH а не Li-ion? ;-)

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

>Ну-ка, расскажи подробнее. Ты это про костыльки вроде GObject? Если это - красиво и гибко, то могу лишь посочувствовать.

Пионер ты и есть пионер. Разве нельзя самому зная как реализовано ООП в С++ реализовать без косяков с Си?

Robotron
()

>Here we go again – why Mono doesn’t suck

ну вообще-то дословно: "почему моно не сосет?" ))
элементарно сосалку не дописали еще...

k0l0b0k ★★
()

>Рекомендую к прочтению всем: и сторонникам Mono, и противникам.

OHLOL, хорошая технология не нуждается ни в адвокатах, ни в таких вот статьях, это же очевидно!

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

>Пионер ты и есть пионер.

сказал октябренок

>Разве нельзя самому зная как реализовано ООП в С++ реализовать без косяков с Си?


А ещё можно сделать свой процессор с блеклд... то есть, со своим набором инструкций (без косяков интела и амд), написать свою ОС, свой компилятор, свои библиотеки, сделать свой велосипед, самокат, колесо. Всё можно.

vigilante
()

Мне эти разборки с Моно напоминают пеар Сабчаки - когда этого пеара много, пусть даже в виде тонн гавна, это всё равно создаёт популярность. Есть и второе объяснение - Столлман просто старый муд@к, которому нужно покрасоваться. Ни одного разумного довода он не приводит - просто спирититствует на собственных комплексах. Кроме того, нарушая свою же идею "свободного софта". Ставить Моно или нет - это НАШ выбор. Почему какие-то чмыри должны за нас решать, чем нам пользоваться? Не это ли политика критикуемого Мелкософта??
Моно - это считай родной брат .NET, но это _физически_ отдельная сущность, да ещё и на открытом коде. Так почему бы вместо солянки библиотек не использовать ОДНУ НОРМАЛЬНУЮ? Вечные велосипеды типа Qt и GTk надоели, их ржавые рамы торчат отовсюду - нужно свежее решение! Как ни вертись, но каждые 10 лет в технологиях нужно делать рывок, благо к этому времени появляется море идей и оттачиваются на наших спинах. В Линуксе рывков даже не намечается - те же костыли, только со стразами и пятым колесом. Пусть хоть Моно станет основой _нормальной_ платформы для разработки!

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

>>Слова Ъ-фанатика. Читать про полиморфизм и инкапсуляцию до разжижения мозга.

>fixed

1.Писать switch-и до закостенения мозга.

2.Писать велосипедо vtables.

3.Пейсать хэштаблицы для строкового поиска нужного метода по его названию по типу slot/signal в QT

4.Переходить на быдлоязыки

?

alx_me ★★☆
()

Гм... В чём вопрос? Mono нужен для достижения кроссплатформенности добнет-приложений. На сегодняшний день он этой задачи не выполняет от слова ни разу. Во-первых никто не осиливает писать приложения под винду на чистом добнете, во-вторых сейчас добнет-приложения не запускаются в mono без перекомпилляции (и кучи патчей). Вот когда оба вопроса будут решены тогда начнутся патентные войны^W^W^Wдругое дело.

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

>А ещё можно сделать свой процессор с блеклд... то есть, со своим набором инструкций (без косяков интела и амд), написать свою ОС, свой компилятор, свои библиотеки, сделать свой велосипед, самокат, колесо. Всё можно.

Не для кодировщиков, мозгов не хватит.

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

>Столлман просто старый муд@к, которому нужно покрасоваться.

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

>Ни одного разумного довода он не приводит - просто спирититствует на собственных комплексах.


Вообще-то, приводит. Аргумент один: майкрософт - патентный тролль, и в будущем сможет попытаться перекрыть Mono кислород. Если удастся - будет плохо всем, кто на Mono пишет, а так же всем, кто использует программы на Mono.


>Кроме того, нарушая свою же идею "свободного софта". Ставить Моно или нет - это НАШ выбор. Почему какие-то чмыри должны за нас решать, чем нам пользоваться? Не это ли политика критикуемого Мелкософта??


Читать умеем? "This is not to say that implementing C# is a bad thing. Free C# implementations permit users to run their C# programs on free platforms, which is good." Столлман не против C# или Mono, он просто предупреждает об опасности. И никто не мешает тебе устанавливать и использовать Mono - Столлман против навязывания пользователям Mono дистрибутивами (путём включения по умолчанию программ, от Mono зависящих).

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

>Скажите ТЕХНОЛОГИЯ, всем слаще будет. А тем не менее, в используемом контексте обсуждения, всё что напрямую не исполняется на процессоре это язык. Всё что интерпретируется это язык. переходной он там или почти опкоды, всё что 'почти' - язык.

.Net это фреймворк. Писать используя его можно на ЯЗЫКАХ C#, C++, Lisp, Perl, Python и ещё фиг знает на скольких.

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

>Да, но и не только корпоративных. Вот я обрабатываю фотографии снятые камерой Nikon в оригинальной программе производителя написаной на .Net, изза этого приходиться дома держать ещё и windows

ну и кто тебе запрещает поставить моно и насладиться всей мощью кроссплатформенной технологии от Микрософт?

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

>Моно - это считай родной брат .NET

Это родства там только принципы работы, по реализации моно до .Net не дотягивает и к сожалению не дотягивает.

>Так почему бы вместо солянки библиотек не использовать ОДНУ НОРМАЛЬНУЮ?

Qt

golodranez ★★★★
()

Почему мона плох

Прочитал сей бред. Много буковок - ни одного технического обоснования по существу.

А теперь мои технические аргументы:

1) Java de facto единственный язык программирования в JVM; хотя и есть альтернативы типа Jython, Scala, но они "академические". Лучше знать в совершенстве один язык программирования, чем посредственно знать несколько, к чему призывают .НЭТофилы.

Сравним теперь "флагманские языки" обеих платформ.

2) В Джаве все агрегатированные типы данных объекты. В C# - это не так, есть структуры.

3) В Джаве существуют примитивные типы данных (с репперами, боксингом). Примитивные типы данных хороши для быстрой арифметики.

4) В Джаве все переменные - в хипе. В C# если объект сериализуется, то его можно загнать в стэк. Это увеличивает сущности и затрудняет перенос.

5) В С# есть пойнтеры и адресная арифметика. В Джаве нет. Помним закон Мерфи и делаем выводы.

6) Гетеры и сетеры в С# - избыточны и усложняют синтаксис. В Джаве - все очень просто и наглядно - методы.

7) В каждой новой версии C# встречается множество новых сущностей вопреки принципу Оккама. В Джаве только в "Мустанге" были введены новые крупные синтаксические изменения.

Вывод. Функциональность Джавы развивается за счёт фрейморков. Фенкциональность .НЕТ - за счет переусложнения виртуальной машины и языков, входящих в .НЕТ.

Поэтому мона занимает незначительную часть enterpriZe приложений. Даже меньше мелкомягкого .НЕТа.

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