Mono

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Mono
Mono project logo.png
Тип

Платформенное ПО

Разработчик

Xamarin, ранее Novell

Написана на

Си, C# и XML

Операционная система

Кроссплатформенное программное обеспечение

Первый выпуск

30 июня 2004

Последняя версия

3.12.0 ([февраль 2015 г.][1])

Лицензия

GPL, LGPL, MIT или двойная лицензия

Сайт

mono-project.com

Mono — проект по созданию полноценного воплощения системы .NET Framework на базе свободного программного обеспечения. Основной разработчик проекта Mono — корпорация Xamarin[2], ранее Novell. Проект возглавляет Мигель де Икаса, известный разработчик, основатель проекта GNOME. Реализации Mono существуют для следующих операционных систем: Windows, Linux, BSD (FreeBSD, OpenBSD, NetBSD), Solaris, Mac OS X, Apple iOS, Wii[3]. Поддерживаются платформы: s390, SPARC, PowerPC, x86/x86-64, IA64, ARM, Alpha, MIPS, HPPA[3].

Состав и функциональность[править | править вики-текст]

Mono включает компилятор языка C# — dmcs[4], среду исполнения .NET — mono (с поддержкой JIT) и mint (без поддержки JIT), отладчик, а также ряд библиотек, включая реализацию WinForms, ADO.NET и ASP.NET, а также компиляторы smcs (для создания приложений для Moonlight) и vbc (для приложений, написанных на VB.NET).

В рамках проекта также разрабатываются привязки для графической библиотеки GTK+ на платформу .NET.

Также Mono содержит альтернативу структуре WPF-приложений (XAML + C#, или любой другой язык, который поддерживается в данной среде исполнения). Данный язык называется Glade, при помощи него можно собирать GTK-приложения.

Mono может исполнять модули, написанные на языках C#, F#, Visual Basic .NET, Java, Boo, Nemerle, Python, JavaScript, Erlang, SmallTalk, Lisp, PHP и Object Pascal (при наличии компилятора в среду .Net/Mono). Ожидается также поддержка языков C, Ada 2005 и Eiffel.

Юридические вопросы[править | править вики-текст]

После заключения Microsoft договорённости с компанией Novell[5], платформа Mono была официально признана реализацией .NET на Unix-подобных операционных системах (Linux, Mac OS X и других). Однако договорённость касается только Novell и клиентов Novell; также технологии ASP.NET, ADO.NET и Windows.Forms не были стандартизированы ECMA/ISO, и использование их в Mono находится под угрозой юридических претензий со стороны Microsoft (претензии возможны только в странах, где существуют патенты на программное обеспечение[6]). Mono предоставляет реализацию ASP.NET, ADO.NET и Windows.Forms, но в то же время рекомендует не использовать эти API.[6]

Принятая в проекте лицензия на компилятор и другие программы — GNU GPL. Лицензия на среду исполнения и другие библиотеки — GNU LGPL. Лицензия на библиотеки классов — X11 License. Патенты на C#/CLI принадлежат Microsoft, и ведутся споры насчёт риска и допустимости роста зависимости от Mono или C#.[7][8][9]

Программы, основанные на Mono[править | править вики-текст]

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

Ссылки[править | править вики-текст]