Mono

Mono
Tyyppi tietokonealusta [d] jakehys
Tekijä Miguel de Icaza
Kehittäjä Xamarin , Ximian ja Novell
Sisään kirjoitettu C , C# [2] ja XML
Käyttöjärjestelmä Linux , Microsoft Windows ja macOS
Ensimmäinen painos 30. kesäkuuta 2004
uusin versio 6.12.0.182 [1] (14. kesäkuuta 2022 ) ( 14.6.2022 )
Lisenssi GNU GPL 2 , GNU LGPL ja X11
Verkkosivusto monoproject.com

Mono on projekti .NET Frameworkin  täydellisen ilmaisen ohjelmistototeutuksen luomiseksi . Mono-projektin pääkehittäjä on Xamarin Corporation [3] , entinen Novell . Projektia johtaa Miguel de Icaza , tunnettu kehittäjä, GNOME -projektin perustaja . Monon toteutuksia on olemassa seuraaville käyttöjärjestelmille: Windows , Linux , BSD ( FreeBSD , OpenBSD , NetBSD ), Solaris , Mac OS X , Apple iOS , Wii [4] . Tuetut alustat: s390 , SPARC , PowerPC , x86 / x86-64 , IA-64 , ARM , Alpha , MIPS , HP PA [4] .

Koostumus ja toiminnallisuus

Mono sisältää C# -kääntäjän  - dmcs [ 5] , .NET runtime -monon ( JIT -tuella ) ja mintin (ilman JIT-tukea), debuggerin ja useita kirjastoja, mukaan lukien WinForms -toteutus , ADO.NET ja ASP.NET , sekä smcs (sovellusten rakentamiseen Moonlightille ) ja vbc ( VB.NET :ssä kirjoitetuille sovelluksille ) kääntäjät.

Projektissa kehitetään myös sidoksia GTK+ -grafiikkakirjastoon .NET-alustalle.

Mono sisältää myös vaihtoehdon WPF - sovellusten rakenteelle ( XAML + C# tai mikä tahansa muu tässä ajonaikaisessa tuettu kieli). Tätä kieltä kutsutaan Gladeksi , ja sitä voidaan käyttää GTK-sovellusten rakentamiseen.

Mono voi suorittaa moduuleja, jotka on kirjoitettu kielellä C# , F# , Visual Basic .NET , Java , Boo , Nemerle , Python , JavaScript , Erlang , SmallTalk , Lisp , PHP ja Object Pascal (kääntäjällä .Net/Mono-ympäristössä). Tukea odotetaan myös C :lle , Ada 2005:lle ja Eiffelille .

Lakiasiat

Sen jälkeen kun Microsoft teki sopimuksen Novellin kanssa [6] , Mono-alusta tunnustettiin virallisesti .NET-toteutukseksi Unixin kaltaisissa käyttöjärjestelmissä ( Linux , Mac OS X ja muut). Sopimus koskee kuitenkin vain Novellin ja Novellin asiakkaita; Myöskään ASP.NET- , ADO.NET- ja Windows.Forms-teknologioita ei ole standardoitu ECMA/ISO:n toimesta, ja niiden käyttöä Monossa uhkaa Microsoftin oikeudelliset vaatimukset (vaatimukset ovat mahdollisia vain maissa, joissa on ohjelmistopatentit [7] ) . Mono tarjoaa ASP.NET-, ADO.NET- ja Windows.Forms-toteutuksia, mutta samalla suosittelee olemaan käyttämättä näitä API-liittymiä. [7]

Kääntäjän ja muiden projektissa hyväksyttyjen ohjelmien lisenssi on GNU GPL . Ajonaikaiset ja muut kirjastot on lisensoitu GNU LGPL :n alaisuudessa . Luokkakirjaston lisenssi on MIT .

Microsoft on ilmoittanut, että C#-standardit (ECMA 334) ja CLI-kehykset (ECMA 335) ovat nyt Community Promise -asiakirjan alaisia, jotka virallisesti julistavat, ettei tällä tavalla standardoidulle kehitykselle ole patentteja tai muita vaatimuksia. Siirto poistaa monet kiistat, jotka liittyvät Mono-alustaan, joka on itse asiassa näiden standardien avoimen lähdekoodin toteutus, ja antaa sille koskemattomuuden, jos patenttikysymys nostetaan uudelleen esille.

Tämän lausunnon julkaisi Peter Galli, vanhempi viestintäpäällikkö, Platform Strategy Department, vastauksena Miguel de Icazan äskettäisiin tiedusteluihin ECMA 334- ja 335 -standardien lisensoinnista. Siinä sanotaan osittain, että antamassaan lupauksen yhteisölle Microsoft luopuu vapaaehtoisesti patenttisyyttäjistä oikeushenkilöitä ja yksityishenkilöitä, jotka tuottavat, käyttävät, levittävät, mainostavat, myyvät patenteissa määriteltyjä toteutuksia, riippumatta niiden kehitys- ja jakelumallista, mukaan lukien avoimet kehitysmallit, kuten LGPL ja GPL.

Samaan aikaan kysymys sellaisten teknologioiden käyttöönotosta, joita ei mainita yhteisön lupauksessa, on edelleen avoin. Tältä osin Novellin varapresidentti Miguel de Icaza ilmoitti, että tästä eteenpäin Mono-projekti jaetaan kahteen osaan:

Monopohjaiset ohjelmat

Katso myös

Muistiinpanot

  1. mono-6.12.0.182 .
  2. Mono avoimen lähdekoodin projekti Open Hubissa: Languages Page - 2006.
  3. Xamarin - Rakenna monialustaisia ​​iOS-, Android- ja Mac-sovelluksia C#:lla ja .NET:llä . Käyttöpäivä: 19. heinäkuuta 2011. Arkistoitu alkuperäisestä 18. heinäkuuta 2011.
  4. 12 tuettua alustaa - mono . Haettu 2. helmikuuta 2012. Arkistoitu alkuperäisestä 3. helmikuuta 2012.
  5. Ennen versiota 2.0 - mcs; versioon 4.0 asti - gmcs
  6. Microsoft ja SUSE uusivat onnistuneen yhteentoimivuussopimuksen . Haettu 20. toukokuuta 2012. Arkistoitu alkuperäisestä 11. toukokuuta 2012.
  7. 1 2 FAQ: Lisenssi - Mono . Haettu 17. huhtikuuta 2011. Arkistoitu alkuperäisestä 9. kesäkuuta 2011.
  8. Onko Unity Engine kirjoitettu mono-/C#-kielellä? tai C++ - Unity Answers (linkki ei ole käytettävissä) (9. heinäkuuta 2014). Haettu 28. huhtikuuta 2018. Arkistoitu alkuperäisestä 9. heinäkuuta 2014. 

Linkit