Mono | |
---|---|
Tip de | platformă informatică [d] șicadru |
Autor | Miguel de Icaza |
Dezvoltator | Xamarin , Ximian și Novell |
Scris in | C , C# [2] și XML |
Sistem de operare | Linux , Microsoft Windows și macOS |
Prima editie | 30 iunie 2004 |
ultima versiune | 6.12.0.182 [1] (14 iunie 2022 ) |
Licență | Licență GNU GPL 2 , GNU LGPL și X11 |
Site-ul web | monoproject.com |
Mono este un proiect pentru a crea o implementare completă de software gratuită a .NET Framework . Principalul dezvoltator al proiectului Mono este Xamarin Corporation [3] , fosta Novell . Proiectul este condus de Miguel de Icaza , un dezvoltator renumit, fondator al proiectului GNOME . Implementări Mono există pentru următoarele sisteme de operare: Windows , Linux , BSD ( FreeBSD , OpenBSD , NetBSD ), Solaris , Mac OS X , Apple iOS , Wii [4] . Platforme acceptate: s390 , SPARC , PowerPC , x86 / x86-64 , IA-64 , ARM , Alpha , MIPS , HP PA [4] .
Mono include un compilator C# - dmcs [ 5] , un runtime .NET - mono (cu suport JIT ) și mint (fără suport JIT), un depanator și o serie de biblioteci, inclusiv implementarea WinForms , ADO.NET și ASP.NET , precum și compilatoarele smcs (pentru construirea de aplicații pentru Moonlight ) și vbc (pentru aplicațiile scrise în VB.NET ).
Proiectul dezvoltă, de asemenea, legături pentru biblioteca grafică GTK+ pentru platforma .NET.
Mono conține, de asemenea, o alternativă la structura aplicațiilor WPF ( XAML + C# sau orice alt limbaj care este acceptat în acest runtime). Acest limbaj se numește Glade și poate fi folosit pentru a construi aplicații GTK.
Mono poate executa module scrise în C# , F# , Visual Basic .NET , Java , Boo , Nemerle , Python , JavaScript , Erlang , SmallTalk , Lisp , PHP și Object Pascal (cu un compilator în mediul .Net/Mono). De asemenea, este de așteptat suport pentru C , Ada 2005 și Eiffel .
După ce Microsoft a încheiat un acord cu Novell [6] , platforma Mono a fost recunoscută oficial ca o implementare a .NET pe sisteme de operare asemănătoare Unix ( Linux , Mac OS X și altele). Cu toate acestea, acordul se aplică numai clienților Novell și Novell; de asemenea , tehnologiile ASP.NET , ADO.NET și Windows.Forms nu au fost standardizate de ECMA/ISO și utilizarea lor în Mono este sub amenințarea pretențiilor legale din partea Microsoft (revendicările sunt posibile numai în țările în care există brevete software [7] ) . Mono oferă implementări ale ASP.NET, ADO.NET și Windows.Forms, dar, în același timp, recomandă împotriva utilizării acestor API-uri. [7]
Licența pentru compilator și pentru alte programe acceptate în proiect este GNU GPL . Runtime și alte biblioteci sunt licențiate sub GNU LGPL . Licența bibliotecii de clasă este MIT .
Microsoft a anunțat că standardele C# (ECMA 334) și cadrele CLI (ECMA 335) sunt acum supuse documentului Community Promise, care declară oficial că nu există brevete sau alte revendicări pentru dezvoltări standardizate în acest fel. Mișcarea înlătură numeroasele controverse din jurul platformei Mono, care este de fapt o implementare open source a acestor standarde și îi conferă imunitate în cazul în care problema brevetului este ridicată din nou.
Această declarație a fost făcută de Peter Galli, Senior Communications Manager, Platform Strategy Department, ca răspuns la întrebările recente ale lui Miguel de Icaza cu privire la acordarea de licențe pentru standardele ECMA 334 și 335. Se spune, parțial, că, făcând o promisiune comunității, Microsoft renunță în mod voluntar la urmărirea penală a persoanelor juridice și persoanelor fizice care produc, folosesc, distribuie, fac publicitate, vând orice implementări specificate în brevete, indiferent de modelul lor de dezvoltare și distribuție, inclusiv modele de dezvoltare deschise, cum ar fi LGPL și GPL.
În același timp, problema implementării tehnologiilor care nu sunt menționate în Promisiunea Comunității rămâne deschisă. În acest sens, vicepreședintele Novell Miguel de Icaza a anunțat că de acum înainte, proiectul Mono va fi împărțit în două ramuri:
C# | |
---|---|
Versiuni |
|
PE |
|
Legate de |
GNOME | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
de bază |
| ||||||||||||||||
Aplicații |
| ||||||||||||||||
Componente | |||||||||||||||||
Arhitectura platformei |
| ||||||||||||||||
Comunitate | |||||||||||||||||
oameni | |||||||||||||||||
|
.NET | |
---|---|
Implementări | |
Arhitectură | |
Infrastructură | |
Limbi Microsoft | |
Alte limbi | |
Fundamente Windows | |
Componente | |
Comparații |
|
Tehnologii viitoare | |
Resurse informaționale |
Novell | |
---|---|
Managementul serviciilor de afaceri |
|
Identificarea și managementul sistemului |
|
Distribuții SUSE Linux | |
Colaborare în grup de lucru | |
Proiecte | |
Instruire și certificare |
|
Persoane semnificative |
Software gratuit și open source Microsoft | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
informatii generale |
| ||||||||||||
software _ |
| ||||||||||||
Licențe | |||||||||||||
subiecte asemănătoare |
| ||||||||||||
Categorie |