Livres
Bb.insectes autres betes mono

Collectif
Nathan
Analyse des tâches mono et multi-opérateurs du contrôle aérien par le formalisme MAD pour la spécification ergonomique de l'interf

Belen-Maria del Mar Alonso
INRIA

Amazon

Revue de presse Mono_%28informatique%29
shout shout

Mono (logiciel)

Un article de Wikipédia, l'encyclopédie libre.

(Redirigé depuis Mono (informatique))
Pour les articles homonymes, voir Mono.
Mono
Développeur Novell
Dernière version 1.9.1 (le 21 avril 2008)
Environnements Multiplate-forme
Licence 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.

Mono a été initié par Miguel de Icaza et est actuellement soutenu par Novell.

Sommaire

[] 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 (également normes ISO). Mono supporte pour l'instant la version 1.1 du framework .NET de Microsoft.

Mono propose entre autres :

  • Un compilateur C# 2.0, une machine virtuelle, de nombreuses classes de base; tous ces composants reposent sur les standards Ecma-334 et Ecma-335. Mono propose également un compilateur Javascript et VB.NET;
  • des API indépendantes de l?environnement : sécurité, base de données, web services, XML, web forms ;
  • des API destinées à la programmation sous GNU/Linux et plus particulièrement 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 notamment 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 également disponible.

[] Comparaison avec la plate-forme Java

Souvent comparé à 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é (toute relative cependant pour les deux plateformes) et un ensemble impressionnant d?API fournis en standards.

Mono se démarque cependant de la solution de Sun :

  • la plate-forme décrit également un système 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 tous les langages de la plate-forme, de manière transparente, sans créer de bindings souvent 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 écrits 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, parfois au détriment de la portabilité.

Note : la plate-forme est conçue pour des langages compilés et orientés objet. La mise en ?uvre de Python IronPython a cependant démontré qu?il était tout à fait possible d?obtenir des performances similaires avec un langage historiquement interprété. Il faut également noter que la plate-forme est facilement interfaçable avec d?autres langages compilés de manière traditionnelle 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 totalement mises en ?uvre à ce jour, mais ne sont pas vitales au développement d'applications 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 (en).

[] Liens internes

  • MonoDevelop : Un environnement de développement pour Mono sous Linux et MacOS X

[] Liens externes

 

shout
Réagissez


Attention! tous les commentaites inaproprié seront supprimés
Titre:
Video YouTube ou google: (doit être en rapport avec le sujet)
Votre mail:
Un pseudo:
Votre site:
Commentaire (le html n'est pas autorisé, nombre de caractère maximum = 400)
  save (Comment eBabylone 1.0 beta)

Le Texte ci-dessus est disponible sous GNU Free Documentation License.
La source est wikipedia http://fr.wikipedia.org/wiki/ Mono (informatique)
Base de liens  |  Ajouter lien  |  Contact Rss
On est 17 visiteur(s) en ligne
Server 2.0