Mono (platforma)

Mono
Logo
Vývojář.NET Foundation (předtím Novell a Xamarin, původně Ximian) a Mono komunita
První vydání30. června 2004
Aktuální verze6.12.0.182 (14. června 2022)
Připravovaná verze5.8.0.103 (10. ledna 2018[1])
Operační systémMS Windows, macOS, GNU/Linux
PlatformaAMD64, IA-32, ARM, MIPS, PowerPC, SPARC, System/390, IA-64
Vyvíjeno vC, C#, XML
Typ softwaruPočítačová platforma
LicenceGNU GPL, GNU LGPL a MIT[2]
Webwww.mono-project.com
Některá data mohou pocházet z datové položky.

Mono je open-source projekt vedený společnosti Xamarin, dcerou Microsoftu (dříve firmou Ximian). Jeho cílem je vytvořit sadu nástrojů kompatibilních s prostředím .NET, které splňují standardy ECMA (Ecma-334 a Ecma-335). K těmto nástrojům patří i překladač jazyka C# a Common Language Runtime. Mono může běžet na počítačíchoperačními systémy GNU/Linux, FreeBSD, UNIX, macOS, Solaris a MS Windows.

Za projektem po celou dobu stojí Mexičan Miguel de Icaza, zaměstnanec Microsoftu (zodpovědný mj. i za projekt Mono) a někdejší zakladatel společnosti Ximian (poté pracoval pro Novell).

Historie

Autor se zajímal o technologii .NET prakticky již od jejího vydání v prosinci 2000. Poté, co zkoumal interpret bajtkódu, zjistil, že nikde nejsou dostupné specifikace metadat. V únoru roku 2001 se poptával po chybějících informacích a ve stejné době začal pracovat na kompilátoru jazyka C#. Kompilátor psal rovněž v jazyce C#, aby si ho důkladně procvičil. V dubnu 2001 společnost ECMA publikovala chybějící informace, a tak na konferenci GUADEC (6. až 8. dubna 2001) mohl de Icaza předvést vlastnosti jeho kompilátoru (ten byl mimochodem schopen parsovat sám sebe).

Uvnitř společnosti Ximian mezitím vznikaly diskuze ohledně vývojových nástrojů pro zvýšení produktivity, tedy jak vytvářet více aplikací v kratší době, a tím i levněji. Po studii, zdali je vůbec možné takový plán provést, společnost Ximian přerozdělila zaměstnance. Tím vznikl Mono tým. Chybějící části nutné pro vývoj na platformě .NET tým doplnil vlastními, a tak se vyvinul Mono open source projekt. Vznik projektu byl oficiálně oznámen na konferenci O'Reilly 19. června 2001.

Logem projektu Mono je opičí tvář. Mono je totiž španělským výrazem právě pro opici.[3] Ostatně logo příbuzné s opicí přímo zapadá do výčtu dalších. Sama společnost Ximian má ve svém hlavním symbolu bezocasou opici, podobně GNOME má jako znak otisk opičí tlapy nebo Bonobo projekt, který je pojmenovaný podle druhu šimpanze. V sekci FAQ projektu Mono je dokonce uvedeno „We like monkeys“ (česky „Máme rádi opice“).

Verze a vývoj

Verze 2.10.8 z 19. prosince 2011 poskytuje jádro API .NET Framework a podporuje Visual Basic .NET a C# verze 2.0, 3.0 a 4.0. Částí distribuce je i LINQ to Object a XML, ale již ne LINQ to SQL. C# 4.0 je v této verzi výchozí mód kompilátoru. Windows Forms verze 2.0 je částečně podporován, nicméně z důvodu zastaveného vývoje je jeho podpora nekompletní.

Cílem MONO je plná podpora vlastností .NET Frameworku 4.0 kromě WPF, ADO.NET Entity Framework a WF, WCF pouze omezeně. Chybějící části projektu jsou vyvíjeny ve vlastním podprojektu se jménem Olive a je zatím ve stadiu experimentálního vývoje.

Open source implementace pluginu Silverlight [ˈsilvəˌlait], která se zde nazývá Moonlight [ˈmuːnˌlait], je již vyřešena a podporována od verze 1.9. Moonlight 1.0, který podporuje API ze Silverlight 1.0, bylo vydané 20. ledna 2009. Jeho verze 2.0, které zahrnuje podporu pro Silverlight 2.0 a některé prvky z 3.0, byla vydána v prosinci 2009.

Po roce 2020 je ukončen vývoj MS Silverlight a je upouštěno od jeho použití. Celá koncepce efektivního prostředí pro tvorbu webu se tak zaměřuje na využití nativní specifikace HTML5.

Měsíční svit

Od verze Mono 1.9 je zahrnuta open-source implementace Microsoft Silverlight, nazvaná Moonlight.[4] Moonlight 1.0, který podporuje rozhraní API Silverlight 1.0, byl vydán 20. ledna 2009. Moonlight 2.0 podporuje Silverlight 2.0 a některé funkce Silverlight 3.0.[5] Předběžná verze Moonlight 3.0 byla oznámena v únoru 2010 a obsahuje aktualizace podpory Silverlight 3.[6]

Projekt Moonlight byl opuštěn 29. května 2012.[7] Podle Miguela osud projektu zpečetily dva faktory: Microsoft přidal „umělá omezení“, která jej „učinila nepoužitelným pro programování na desktopu“, a technologie se na webu dostatečně neprosadila. Navíc samotný Silverlight byl v roce 2012 zavržen Microsoftem.

Komponenty projektu

Mono se skládá ze tří částí:

Komponenty jádra
Komponenty jádra zahrnují kompilátor jazyka C#, virtuální stroj, a základní třídy knihoven. Tyto komponenty jsou založené na standardech Ecma-334 a Ecma-335.
Vývojový balík Mono/Linux/GNOME
Vývojový balík Mono/Linux/GNOME v součinnosti s existujícími knihovnami GNOME a Free a open-source knihovnami nabízí nástroje pro vývoj aplikací. Zahrnují Gtk# pro návrhy GUI, Mozilla knihovny pro práci s renderovacím enginem Gecko, Unixové knihovny, knihovny pro spojení s databází, bezpečnostní balík a editor XML schémat RELAX NG, Gtk# dovoluje, aby se aplikace tvořené v projektu Mono mohly plnohodnotně zaintegrovat do GNOME prostředí, stejným způsobem jako nativní aplikace. Knihovny pro práci s databázemi umožňují spojení s typy jako MySQL, SQLite, PostgreSQL, Firebird, Open Database Connectivity (ODBC), Microsoft SQL Server (MSSQL), Oracle, objektově orientované databázi db40 a dalšími.
Balík pro kompatibilitu s Microsoft Windows
Tento balík umožňuje přenos aplikací z prostředí Windows .NET na Linux. Kromě dalších částí obsahuje ADO.NET, ASP.NET a Windows.Forms.

Mono for the Unreal Engine 4

Dne 23. 10. 2014 Miguel de Icaza oznámil Mono pro Unreal Engine 4.[8]

Reference

  1. Mono 5.8.0 Release Notes [online]. Mono Project, 2018-01-10 [cit. 2018-01-12]. Dostupné online. (anglicky) 
  2. FAQ: Licensing [online]. Mono Project [cit. 2018-01-12]. Mono-project.com. Dostupné online. (anglicky) 
  3. opičák překlad z češtiny do španělštiny [online]. Seznam.cz, a.s. [cit. 2018-01-12]. Dostupné online. 
  4. SCAPARRO, Marc. Team fortress 2. In: ACM SIGGRAPH 2008 computer animation festival on - SIGGRAPH '08. New York, New York, USA: ACM Press, 2008. Dostupné online. DOI 10.1145/1400468.1400544.
  5. FLOOD, Maria. ‘A film we've been waiting for'. London: Routledge Dostupné online. S. 5–17. 
  6. HULOT, Jean-Sébastien. COVID-19 in patients with cardiovascular diseases. Archives of Cardiovascular Diseases. 2020-04, roč. 113, čís. 4, s. 225–226. Dostupné online [cit. 2022-04-04]. ISSN 1875-2136. DOI 10.1016/j.acvd.2020.03.009. 
  7. FOLEY, Mary Jo. Xamarin abandons its Silverlight for Linux technology. ZDNet [online]. [cit. 2022-04-04]. Dostupné online. (anglicky) 
  8. LARABEL, Michael. Mono Brings C# To The Unreal Engine 4 [online]. Phoronix Media, 2014-10-23 [cit. 2018-01-12]. (Linux Gaming). Dostupné online. (anglicky) 

Externí odkazy


Média použitá na této stránce

Mono Project Logo.svg
Autor: Mono Project, Licence: CC BY-SA 3.0
The logo of the Mono Project - a software project
Mono architecture.svg
Autor: Traced by User:Stannered, Licence: CC BY-SA 3.0
Simplified Mono architecture