Mono
Mono est une mise en œuvre libre de la plate-forme de développement Microsoft. NET basé sur la CLI.
Recherche sur Google Images :
Source image : blogs.dotnet-france.com Cette image est un résultat de recherche de Google Image. Elle est peut-être réduite par rapport à l'originale et/ou protégée par des droits d'auteur. |
Page(s) en rapport avec ce sujet :
- ... Mono est une plate- forme de développement logicielle servant à développer et d'exécuter des applications. Net client et serveur.... (source : journaldunet)
- ... NET ™. Mono est une implémentation libre de Microsoft.... Par défaut, Ubuntu ne propose pas forcément une plate- forme Mono récente.... (source : doc.ubuntu-fr)
- NET de Microsoft se perfectionne. Soutenue par Novell, sa version 1.2 offre désormais un... La plate- forme Mono est disponible sous deux licences : la GPL et une... (source : zdnet)
Développeur | Novell |
Dernière version | |
Environnements | Multiplate-forme |
Licences | GNU GPL, GNU LGPL ou X11 |
Site web | www. mono-project. com |
Mono est une mise en œuvre libre (sous licence GNU GPL, GNU LGPL ou X11 selon les éléments) de la plate-forme de développement Microsoft. NET basé sur la CLI.
Mono a été initié par Miguel de Icaza au sein de sa société Ximian et est aujourd'hui soutenu par Novell qui l'a racquise en 2003.
Présentation
Mono est une plate-forme de développement complète basée sur une mise en œuvre de la machine virtuelle . NET et des API de base définis à l'ECMA (aussi normes ISO). Mono supporte pour le moment la version 2.0 du framework. NET de Microsoft.
Mono propose entre autres :
- Un compilateur C# 3.0, une machine virtuelle, de nombreuses classes de base; tous ces composants reposent sur les standards Ecma-334 et Ecma-335. Mono propose aussi un compilateur Javascript et VB. NET mais aussi le portage de Silverlight sous le nom de Moonlight ;
- des API indépendantes de l'environnement : sécurité, base de données, web services, XML, web forms ;
- des API conçues pour la programmation sous GNU/Linux et surtout GNOME : Gtk#, Glade# Gecko#, Gst# ;
- des API compatibles avec le framework . Net de Microsoft. Il s'agit du portage de briques logicielles non couvertes par une standardisation ECMA, comme ASP. NET, ADO. NET ;
- un IDE (environnement de développement intégré) : MonoDevelop, avec surtout le support de la complétion de code ;
- un outil pour naviguer dans la documentation : Monodoc, qui a l'originalité de pouvoir être modifié par le programmeur qui peut ensuite envoyer automatiquement les modifications au CVS de Mono ;
- un serveur web léger entièrement compatible avec la technologie ASP. NET qui permet d'utiliser n'importe quel langage de la plate-forme pour générer des sites web dynamiques. Un module Apache est aussi disponible.
Comparaison avec la plate-forme Java
Fréquemment comparée à la plate-forme Java, cette plateforme en partage de nombreux aspects techniques comme l'utilisation d'un langage intermédiaire (IL pour Intermediate Langage, équivalent du bytecode Java), le support d'application web, la portabilité, et une API étendue apportée en standard.
Mono se démarque cependant de la solution de Sun :
- La plate-forme décrit aussi un dispositif facilitant l'interopérabilité entre les langages : le programmeur développe dans le langage de son choix mais sa bibliothèque pourra être utilisée par l'ensemble des langages de la plate-forme, de manière transparente, sans créer de bindings fréquemment lourds et coûteux à utiliser et maintenir ;
- Des fonctionnalités supplémentaires comme les métadonnées, la détection de débordement ou encore le versionning et la simplicité d'utilisation d'API rédigés en C ;
- Une philosophie différente : Java vise avant tout la portabilité du bytecode et des API standards, Mono vise plutôt l'intégration dans l'environnement d'exécution, quelquefois au détriment de la portabilité.
La plate-forme est conçue pour des langages compilés et orientés objet. La mise en œuvre de IronPython a cependant démontré qu'il était envisageable d'obtenir des performances identiques avec un langage historiquement interprété. Aussi, la plate-forme est interfaçable avec d'autres langages compilés de manière respectant les traditions, comme le langage C.
Mono et les brevets Microsoft
Le portage vers Mono de composants . NET non soumis à l'ECMA pour standardisation exposa le projet à des poursuites pour violations de brevets logiciels, et ce depuis le début. Ce risque n'est pas lié aux technologies soumises à l'ECMA, comme C#, ni aux bibliothèques ou autres couches logicielles du projet GNU. Ces brevets concernent des technologies développées par Microsoft et constituant en partie le framework . NET, comme ASP. NET, ADO. NET ou la couche communication du framework . NET 3.0 (Windows Communication Foundation)... Ces technologies ne sont pas complètement mises en œuvre à ce jour, mais sont vitales pour les versions futures de Mono.
Accord entre Novell et Microsoft
Microsoft et Novell ont annoncé le 2 novembre 2006 la signature d'un accord dans lequel Microsoft s'engage à ne poursuivre ni Novell, ni leurs clients, pour violation de brevets logiciels. Le projet Mono est concerné par cet accord.
Controverse au sujet de la GPL
Bien que soutenu par Novell, le projet Mono concerne d'autres acteurs du logiciel libre. Pour certains, l'accord entre Microsoft et Novell représente un risque pour le logiciel libre ainsi qu'une remise en cause de sa définition[1], [2], [3].
Projet utilisant Mono
La société unity3D (Mac) a porté son environnement sous Windows qui génère des fichiers binaires écris en C# grâce au compilateur Mono.
Notes et références
- ↑ (en) The Free Software Definition
- ↑ (en) "Microsoft and Novell Collaboration, follow", les explications de Miguel de Icaza.
- ↑ (en) Article de David Sugar (Free Software magazine) : "From freedom to slavery; a week of two distros".
- (en) Site officiel
- (en) Documentation des classes
- (fr) MonoDevelop : Un environnement de développement pour Mono
- (fr) Monofrance Portail francophone dédié à Mono avec Documentation, Foire aux question, Forum et info.
- (fr) http ://pkg-mono. alioth. debian. org : Mono pour Debian
- (en) http ://www. mono-live. com : Image ISO ou VMWare pour tester Mono
Recherche sur Amazone (livres) : |
Voir la liste des contributeurs.
La version présentée ici à été extraite depuis cette source le 17/03/2009.
Ce texte est disponible sous les termes de la licence de documentation libre GNU (GFDL).
La liste des définitions proposées en tête de page est une sélection parmi les résultats obtenus à l'aide de la commande "define:" de Google.
Cette page fait partie du projet Wikibis.