Опубликован (http://www.mono-project.com/news/2017/05/15/mono-5-0-is-out/) выпуск Mono 5.0 (http://www.mono-project.com/), свободной многоплатформенной реализации технологии .NET, обеспечивающей поддержку спецификаций .Net Framework для Unix, OS X и Windows. Бинарные сборки подготовлены (http://www.mono-project.com/download/#) для Linux, macOS и Windows.
Особенности (http://www.mono-project.com/docs/about-mono/releases/5.0.0/) новой версии:
- В состав добавлен компилятор Roslyn (https://www.opennet.me/opennews/art.shtml?num=41430) с полноценной поддержкой седьмой версии языка C# (https://en.wikipedia.org/wiki/C_Sharp_(programming_language).... Оригинальный компилятор Mono C# сохранен в качестве опции, но он не поддерживает C#7;
- По умолчанию задействован многопоточный сборщик мусора SGen;
- В состав интегрирована оригинальная сборочная система msbuild (https://www.opennet.me/opennews/art.shtml?num=41871), идентичная системе MSBuild, применяемой в .NET для Windows. Ранее развиваемая система сборки xbuild (альтернативная реализация MSBuild) объявлена устаревшей;- Продолжено включение компонентов .NET Core (https://www.opennet.me/opennews/art.shtml?num=44680), открытых компанией Microsoft. Эталонные сборки (.NET Assemblies) обновлены для соответствия API .NET 4.6.2.
URL: http://www.mono-project.com/news/2017/05/15/mono-5-0-is-out/
Новость: http://www.opennet.me/opennews/art.shtml?num=46555
В комментариях наверняка будут интересоваться, зачем оно нужно, если есть открытый .NET Core. Ответ таков:
- Mono поддерживает Android/iOS, а .NET Core - ещё нет.
- Mono много куда интегрирован, ещё не все перешли на .NET Core
- Многие библиотеки ещё не готовы к .NET Core
- Народ говорит, что .NET Core ещё сыроват
и когда они поглотят друг друга?
Когда они убьют друг друга?
Finish Him!
Не, зачем оно вабще нужно, на линухе, только этого шлака не хватает, оракла мало с их ручной установкой, надо еще и мс притащить
> Не, зачем оно вабще нужно, на линухеПоправьте, если ошибусь - но его вроде бы OpenRA по зависимостям целую пачку тащит :).
Логично, если забыть про то, что .NET в принципе не нужен.
Одно время, разработчики GNOME хотели сделать C# - неотъемлимой частью десктопного линукса. Я про 2006-2007 годы, когда по умолчанию установили Tomboy, Banshee и F-Spot. Возможно, это было бы к лучшему. Больше прог, больше игр. Но внедрить не удалось - вон игры на движке Unity таскают с собой Portable-версию Mono. Не удалось потому что воспротивилось сообщество, перестав "поддерживать рублём" Novell, и Red Hat, который сделал Gnote вместо Tomboy.
Помню=помню! Systemd своего времени! Также ньюфаги топили за Mono, потому что "стильно-модно-молодёжно". Хорошо что отстояли GNOME. Правда, через год его почему-то "зaкoпали".
Моя позиция заключается в основном в том, что у C# нет никаких видимых преимуществ над другими ЯП, а Qt со своим допиленным C++ так и вовсе вырвался вперед настолько, что его вряд ли кто-то догонит в ближайшее время.
Зачем развивать то, что не развивается?
Язык С#, да и весь .NET в целом развивается бешеными темпами, намного быстрее джавки(ихний jigsaw не приняли, а streams до уровня LINQ так и не дотягивают), тем более быстрее плюсов.
Да и сам язык приятный. Не борешься с языком, а решаешь задачу.
Да и под линуксом работает, хорошо работает(второй проект уже поднимаем, пишем на федоре), плюс аналог WPF под дотнет кор завезли,с поддержкой gtk, cairo, skia.
Когда linux-сообщество перерастет свои детские болезни и перестанет вопить "нинужно" на абсолютно все подряд, тогда и ситуация улучшится в плане юзабилити системы.
> тем более быстрее плюсов.Если ты про производительность, а не про скорость развития библиотеки - обратись к модератору за помощью.
>> у C# нет никаких видимых преимуществ над другими ЯПНЕТУ «ЯП». Давноооо нету.
Есть _СРЕДА ИСПОЛНЕНИЯ_ — есть дотнет, есть кеды. Есть ОпенСтеп. Кому чего.
Под _СРЕДУ ИСПОЛНЕНИЯ_ — есть инструментарий.
А «ЯП» это Си для микроконтроллеров.
это ещё почему? может Жаба не нужна?
>В комментариях наверняка будут интересоваться, зачем оно нужно, если есть открытый .NET Coreзачем оно нужно, если есть открытый `зачем оно нужно?` ?
Оба "и зачем оно нужно?" нужны майкрософту для сохранения контроля над дотнетом: спецификация разрабатывается MS (аналога JCP нет), полный фреймворк делается MS, .NET Core делается MS, основным разработчиком Mono является MS (Xamarin уж несколько лет как прибрали к рукам, так что принципиальной разницы нет).
Просто один из вариантов EEE, ничего необычного.
Ну, не знаю, лично я в комментариях поинтересуюсь, зачем нужен Mono/.NET Core, когда есть Java. Тем более, что взятая вся вместе дотнет-тусовка (линух + шинда) снова стагнирует, а разрабы обратно переходят на Java.
Нормальных гуев все равно нет, а для серверных вещей Java на порядок интересней.
Java как ЯП полное дерьмо.
Зато есть скала
такое же дерьмо. в любом случае JVM хуже CLR
в любом случае JVM хуже CLR- собачья.
Что же .Net под линуксом и в опенсорсе уже катит? И ASP.NET?
И Jet brains вовсю пилят райдер.
Нука давай подробности, чем JVM хуже CLR?
Те, кто употребляет "ЯП" — полное дерьмо.
Нет, но жабисты ей иногда травятся.
Самое главное забыл: .NET Core и .NET Framework - совершенно разные и никак не связанные продукты. Общего у них только слово ".NET" в названии да основной ЯП. Библиотеки разные (как по синтаксису, так и по семантике), хоть и похожи слегка, принципы разработки разные. .NET Compact и то больше похоже на полноценный .NET, чем это Core.
> Самое главное забыл: .NET Core и .NET Framework - совершенно разные и
> никак не связанные продукты. Общего у них только слово ".NET" в
> названии да основной ЯП. Библиотеки разные (как по синтаксису, так и
> по семантике), хоть и похожи слегка, принципы разработки разные. .NET Compact
> и то больше похоже на полноценный .NET, чем это Core.Так вот про что было то “children’s edition”... Сложная языка.
"Microsoft may even be willing to accept open source that’s tied to its technologies, but not directly to its platform. Generally these will be “children’s edition” versions like .Net Core. I’m not saying Visual Studio for Linux isn’t progress, but is anyone really itching to run .Net on Linux? I mean, after the outrageous commercial success of Mono (/sarcasm), are any of you going, “Woo-hoo, I want to write .Net code and run it on Linux”? Bueller? Bueller? Anyone?" --http://techrights.org/2016/11/07/broom-meets-uspto/
Да все работает давно уже. Будем надеяться, что это не ловушка.
Ню-ню ... удачи :-)
Не, в комментариях просто напишут, что но нинужно.
В .Net Core вообще никакого GUI нет вроде, WinForms-прогу на ней не запустить, а на Моне запросто.
> Не, зачем оно вабще нужно, на линухеЗатем, что есть куча очень полезных программ написанных на C#, таких как http://maperitive.net и http://smath.info
> http://en.smath.info/view/SMathStudio/summaryНисколько не умаляя достоинства программы, срашиваю вопрос. Внимание на скриншоты. Для чего "клеточка" в фоне под формулами, да еще и не совмещенная и несвязанная с сеткой самих формул и символов? WordArt покоя не дает? Это же такой дурной вкус, что ой ой ой!
>Затем, что есть куча очень полезных программ написанных на C#Обезьянка! А два ореха - это куча? (С)
Я уж молчу что приведённые программы звёзд с неба не хватают, твёрдо в категоии "так себе", а вторая так и вобще - **но :(
В юниксах есть правило - мона ни нуна! ТЧК! :)
То, что .NET от M$ - это еще не делает ее плохой платформой. Это отличная штука лишенная многих болезней Java.
>Это отличная штука лишенная многих болезней Java.Поначалу прогал на c#. Да, памяти меньше ест. Зато "болезней негрософта" там хоть попой ешь. Чего стоит отсутствие обратной совместимости между разными версиями NET. Это убивает все плюсы наглухо. Аналогов Java EE тоже нет. Ну и на кой ляд такой убийца жабы нужен?
Не говорю уж про то, что сервер на винде это оксюморон.
из какой пещеры вы выползли?
обратная совместимость есть и всегда была, может руки не из того места растут?
запускать коровский приложения сейчас можно и на линуксе без проблем (даже текст новости на это намекает).
Главное - ненавидеть и опускать - и тогда другие будут думать что он умный и все знает, да?
>обратная совместимость есть и всегда была, может руки не из того места растут?Особенно фееричные косяки вылезли при обновлении не особо сложного asp-сайтика с winserver2008 на winserver2012. Я не говорю, что пришлось всё пересобирать, хотя зачем(?!) оно же люто совместимое.
Даже после перекомпиляции вылезла тонна мелких проблем с отображением, фильтрацией итд. Т.е. сайт вроде как работает, но коряво.
Дело конечно в косых руках. У Билла Гейца лично всё ОК, я верю!
> с winserver2008 на winserver2012то есть с .net версии 2 на в лучшем случае - 3.5, а скорее всего на модную 4.5
Ничего, что и язык-то успел измениться, через две major version прыгнули (и это нормальные версии, отражающие архитектурные изменения, а не как в опенотсосии принято, чем больше, тем лучше)? Да и сам iis совершенно другой.А вот с вашей любимой жабкой - подбор единственно-верного _патчлевела_, куда там, нахрен, релиза (кстати, не просто так оно при запуске об этом предупреждает) - вполне обычная и привычная процедура. Иначе нате вам "socket error" без дальнейших объяснений. К счастью, оракл об этом тоже знает, поэтому оно штатно умеет ставить весь зоопарк версий одновременно. Зачем бы это было нужно, если бы была "совместимость"?
Вы о чем? Какой патч левел? Такого термина в Java нет.
Вообще не понятно о чём пишете. Да, мне кажется, вы и сами не понимаете что написали.
> Вы о чем? Какой патч левел? Такого термина в Java нет.мне, в общем, глубоко наcрать, какие модные термины вы используете.
> Вообще не понятно о чём пишете.
головка у жабиста слабенькая, вся понималка потрачена на инкапсуляции и наследования.
А результатом творчества этих слабоголовых и имеем комплект из чего-нибудь вроде 1.7.0_17 (и нет, 15 не работает, 67 тоже) и рядом вовсе 1.5-какую-то jre, поскольку добраться иным способом до управления некоторыми системами невозможно. Что-то вот блин ни разу мне не приходилось ставить специфическую с точностью до цифр после второй точки версию .net - как-то вот оно работает и так (да, тоже в системе управления, рядом с теми жабами).
И нет, не рассказывайте мне что в EE жабе все гораздо лучше - там все ровно так же, да еще плюс привязка к какой-нибудь модной (десять лет назад, а ныне недоступной даже в архивах) версии супер-сервера, имел я и такое щастье на руках, повезло что ненадолго. Шаг влево/вправо - оно все разваливается с совершенно бессмысленной диагностикой.
> обратная совместимость есть и всегда была"By default, an app runs on the version of the .NET Framework that it was built for. If that version is not present and the app configuration file does not define supported versions, a .NET Framework initialization error may occur. In this case, the attempt to run the app will fail.
To define the specific versions on which your app runs, add one or more <supportedRuntime> elements to your app's configuration file." (https://msdn.microsoft.com/en-us/library/ff602939(v=vs.110)....
Конфигурационный файл со списком поддерживаемых версий дотнета, иначе программа может не запуститься. Обратная совместимость по-майкрософтовски.> через две major version прыгнули
Термин "обратная совместимость" подразумевает возможность прыгать через любое количество версий (в пределах которых заявлена эта самая совместимость, разумеется) без перекомпиляции и перенастройки.
> оракл об этом тоже знает, поэтому оно штатно умеет ставить весь зоопарк версий одновременно
Microsoft тоже знает о "совместимости" разных версий дотнета и поэтому на любом виндокомпе установлено сразу несколько версий фреймворка. Да и упомянутый выше конфигурационный файл придумали не просто так.
"может" не означает "будет". Эта оговорка на случай мажорного изменения версии - та самая проблема, причину появления которой тебе разжевали выше.Термин "обратная совместимость" подразумевает обратную совместимость, условия совместимости оговариваются отдельно. Конкретно Майкрософт говорит о том, что запуск по всей видимости возможен, но не гарантируется.
> Конфигурационный файл со списком поддерживаемых версий дотнета, иначе программа можетда, вот удивительно-то. И ведь предполагается, что они туда попали не от балды, а ты потрудился потестировать с ними всеми. Иначе - наверное запустится, но _может_ - и нет.
> не запуститься. Обратная совместимость по-майкрософтовски.
вполне внятное описание, что точно работает, а что может - гораздо лучше сказочек, что жаба вся из себя совместимая. А на практике оно "запускается", ага. Если б еще и работало... Впрочем, вебня еще иногда может и не запускаться, требуя понижения уровня безопасности...оппа, ниже чем текущая версия вообще может штатно предоставить, вот енто да.
> Microsoft тоже знает о "совместимости" разных версий дотнета и поэтому на любом
в разумных пределах, да - 3 и 4.
> виндокомпе установлено сразу несколько версий фреймворка. Да и упомянутый выше
я даже не уверен, что они рядом ставятся, даже при большом желании. За пределами аж двух major версий, для которых это совершенно нормально - язык/среда исполнения меняются, а не застыли в окаменелости. Необходимости за все время - не возникало. Четверку - да, довольно регулярно что-то хочет. Подсовываю 4.5, хотя половина того софта на три года ее старше - "потомушта могу", и лень держать апдейты всех остальных. Работает, никаких тебе "socket error" (и не смотря на апдейты).
Наверное, если сильно страдать, можно нарыть что-то, что потребует вообще версию 2, но оно, скорее всего, и всю остальную систему потребует родного 2003го года или когда оно там рождено.> конфигурационный файл придумали не просто так.
жаба тоже придумала - во всяком случае, предупреждение что "ай-ай-яй, у тебя тут версия неправильная" стабильненько мне тут выводит.
С "правильной", что характерно, не фурычит - вероятно, потому что лет той правильной уже столько, что еще ей надо правильную версию винды (only, мы ж такие все платформо-независимые) подставить.
И это вот самый что ни есть ентер-прайсный софт, от прайса аж очки мутнеют (понятно, не на свои гуляем, но кто-то ж эти бабки "освоил").Про то, как он при этом работает, я могу отдельную песню исполнить, но в основном с лексиконом Шнура.
запускать коровский приложения сейчас можно и на линуксе без проблем - не соответствует действительности.
>запускать коровский приложения сейчас можно и на линуксе без проблем (даже текст новости на это намекает).БРЕХНЯ! (С) Крамаров из "Неуловимых ..."
:-)
> БРЕХНЯ! (С) Крамаров из "Неуловимых ..."
> :-)Немного поправлю:
Это говорил Игнат. А его играл Геннадий Юхтин.Но, смысл не меняется... :)
Лучше бы его не было. Один раз пытался запустить приложение написанное на *этом* в линксусе, было больно.
kotlin лучше чем C#
работает на стабильной платформе Javaдля мобилок Xamarin можно накидать приложение как в делфи - но получается лютое г*. т.к. лукн-филл не соблюдает да и бинарники большие.
>т.к. лукн-филл не соблюдаетНеправда.
а WPF они там не планируют добавить? судя по тенденциям он бы хорошо лёг на вяленого
Видно судьба у Вяленого такая, чтоб все на него ложились ;)
WPF умер.
> а WPF они там не планируют добавить? судя по тенденциям он бы
> хорошо лёг на вяленогоНеа, они это объясняют тем, что WPF урановыми гвоздями намертво прибит к DirectX. Фактически, для создания OpenGL-бэкенда придется его переписывать с нуля. Ну и кроме того, Microsoft выпустила Core фактически для того, чтобы занять позиции на никсовых серверах - гуй их в данном случае не интересует от слова "совсем".
> и кроме того, Microsoft выпустила Core фактически для того, чтобы занять
> позиции на никсовых серверах - гуй их в данном случае не интересует от слова "совсем".кто бы вот объяснил ms'овским индусам, что другие индусы норовят короткий уй свой писать ровно на том же, на чем бэкэнд, потому что с трудом осилили только одну книжку (за вторую что, еще раз деньги платить?)
И в результате мы имеем чудненькую комбинацию редхата внутри (почему редхата? А индус про другие не слышал) и виндовой машины снаружи, для управления.впрочем, я полагаю, затрат услилий ms'овских индусов на портирование core было около нуля, а с wfp или какой-нибудь универсальной заменой - это ж их кормить надо. Когда Ms'у оно самому надо - "переписать с нуля" за ними ни разу не залеживалось.
Другая компания должна потратить время и силы только потому, что в твоей компании управленческий бардак, низкооплачиваемые разработчики и некомпетентный начальник ИТ-отдела?"Покупайте ГЗУ-2. Губозакатыватель улучшенный, вторая модель, закатывает губы даже у тех баранов, чьи рога из России достают до Кремниевой долины." (с)
> Другая компания должна потратить время и силы только потому, что в твоей компанииувы, увы, мечта прекрасная, но нет. Плохую дорогу я еще пока не купил, не моя она. Все никак с очередной зарплаты не наскребаю, даже если бутылки сдам. И на хепе c zte тоже не хватает (впрочем, такое я бы и за деньги не стал). На циску тем более (это как раз любители жабок кормить, с примерно теми же результатами). Да чего уж там, и на вмварь-то нифига не хватает.
А сказки что там у них "управленческий бардак", "низкооплачиваемые разработчики" и некомпетенты все как один, рассказывает нам, надо думать, гений управления и архистратиг разработок, из карманной лавочки человек аж в пять горе-работников?
А вот некая "другая компания" может и отхапала бы этим очередной огородик - но, к сожалению, с руководством в ней, действительно, не все гладко, нынешний индус еще очень даже ничего на фоне прочих, но глобальных достижений по захвату мира, к сожалению, от него ждать не приходится - скорее идет сдача рубежа за рубежом, с точечными успехами на отдельных направлениях :-(
жаль, WPF - одна из немногих вещей, которые у мелкософта получились неплохо...
Не планируют, MS не признаёт Linux как десктоп платформу, но это пока :)
Помимо всего прочего, с Моно и юридические вопросы не до конца урегулированы.
12.05 (прошлая пятница) очень хорошо показала, у кого разработки на .net + iis :-)
тем не менее, считается "промышленным" решением.
Так и питонисты с вэбмакаками считаются "программистами"...
Вероятно, потому что они ими являются? Я понимаю, что ты не в курсе, вот, почитай: https://ru.wikipedia.org/wiki/%D0%9F%D1%...
Кем-то считаются, а кем-то и нет.
> 12.05 (прошлая пятница) очень хорошо показала, у кого разработки на .net +
> iis :-)воот, как только успешное решение на .net так топик сразу пропал
Дот нет кор отвязан от ииса, если что. Есть же кестрел. И вообще самое узкое место в коре - это штатная ормка.
И вообще самое узкое место в коре - это то что он от "данайцев" M$ !
Пока выжить не удавалось никому.
Это какие юридические вопросы у вас остались после Open Community Promise?
Хм, действительно, какие юридические вопросы могут быть к *обещанию*?
> Это какие юридические вопросы у вас остались после Open Community Promise?Эээ, "Microsoft Community Promise"? Никаких вопросов, всё кристально:
"[,,,]notably the Microsoft APIs and the fact that Banshee contains parts of Mono that we know for a fact based on the Microsoft Community Promise (MCP) to be a patent trap." --http://techrights.org/2009/07/17/fsf-vs-microsoft-community-.../"The Community Promise does not give you any rights to exercise the patented claims." ... "Until that happens, free software developers still should not write software that depends on Mono. C# implementations can still be attacked by Microsoft’s patents: the Community Promise is designed to give the company several outs if it wants them." --http://techrights.org/2009/07/17/fsf-vs-microsoft-community-.../
> "[,,,]notably the Microsoft APIs and the fact that Banshee contains parts of
> Mono that we know for a fact based on the Microsoft
> Community Promise (MCP) to be a patent trap."--http://techrights.org/2010/10/30/dot-net-gnu-linux-community.../ , извините
...и пр. https://duckduckgo.com/?q=%22Microsoft+Community+Promis...
> "The Community Promise does not give you any rights to exercise the
> patented claims." ... "Until that happens, free software developers still should
> not write software that depends on Mono. C# implementations can still
> be attacked by Microsoft’s patents: the Community Promise is designed to
> give the company several outs if it wants them." --http://techrights.org/2009/07/17/fsf-vs-microsoft-community-.../
Нужно только на мобильниках.
Там тоже не нужно.
мобильник вообще не нужен - так ори.
Ну пенсионерам разве что.
Модные\молодёжные давно все со смартами. И вот там - мся не нужна точно! :-)
В арчике и производных уже:https://repology.org/metapackage/mono/versions
Остальные как всегда тормозят...
Любят свеженьким обмазаться?