» 
Arabic Bulgarian Chinese Croatian Czech Danish Dutch English Estonian Finnish French German Greek Hebrew Hindi Hungarian Icelandic Indonesian Italian Japanese Korean Latvian Lithuanian Malagasy Norwegian Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swedish Thai Turkish Vietnamese
Arabic Bulgarian Chinese Croatian Czech Danish Dutch English Estonian Finnish French German Greek Hebrew Hindi Hungarian Icelandic Indonesian Italian Japanese Korean Latvian Lithuanian Malagasy Norwegian Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swedish Thai Turkish Vietnamese

definition - Mono_(logiciel)

definition of Wikipedia

   Advertizing ▼

Wikipedia

Mono (logiciel)

                   
Page d'aide sur l'homonymie Pour les articles homonymes, voir Mono.
Mono (logiciel)
Mono project logo.svg
Développeur Xamarin
Dernière version 2.10.6 (14 octobre 2011) [+/-]
Version avancée 2.10.8 (19 décembre 2011[1])
Environnements Multiplate-forme
Langue C, C++, C#
Type plate-forme
Licences GNU GPL, GNU LGPL ou X11
Site web www.mono-project.com

Mono est une mise en œuvre open source (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 qui a été racheté par Novell en 2003. Suite au rachat de Novell par Attachmate en 2011, Mono a été repris par une société créée pour l'occasion : Xamarin.

Sommaire

  Présentation

Mono est une plate-forme de développement complète basée sur une mise en œuvre de l'environnement d'exécution de code .NET et des API de base définis à l'ECMA (également normes ISO). Mono supporte pour l'instant la version 4.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 également un compilateur Javascript et VB.NET ainsi que 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 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é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 fournie en standard.

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é.

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 possible d’obtenir des performances similaires avec un langage historiquement interprété. Également, la plate-forme est interfaçable avec d’autres langages compilés de manière traditionnelle, comme le langage C.

  Les composants de Mono

Mono consiste en quatre groupes de composants :

  1. les composants principaux ;
  2. la couche de développement Mono/Linux/GNOME ;
  3. la couche de compatibilité Microsoft ;
  4. les outils.

Les composants principaux incluent le compilateur C#, la machine virtuelle et les bibliothèques de classes de base. Ces composants sont construits selon les normes Ecma-334 et Ecma-335, permettant à Mono de fournir une machine virtuelle en ligne de commande compatible avec les normes établies, libre et ouverte.

La couche de compatibilité Mono/Linux/GNOME fournit des outils pour le développement d'applications en agrémentant les bibliothèques existantes de GNOME et d'autres libres. Cette couche inclut : Gtk# pour du développement d'interfaces graphiques, les bibliothèques permettant d'interagir avec le moteur de rendu Gecko de Mozilla, les bibliothèques d'intégration Unix, les bibliothèques de connexion aux bases de données, une couche de sécurité et le schéma de langage XML RelaxNG. Gtk# permet aux applications Mono de s'intégrer naturellement dans l'environnement de bureau GNOME. Les bibliothèques de connexion aux bases de données permettent l'interaction avec les bases MySQL, SQLite, PostgreSQL, Firebird, Open Database Connectivity (ODBC), Microsoft SQL Server (MSSQL), Oracle, db4o et plusieurs autres. Le projet Mono trace le développement des composants de connexion aux bases de données dans son site web.

La couche de compatibilité Microsoft propose une manière de porter aisément des applications Windows .NET vers GNU/Linux. Ce groupe de composants inclut, entre autres choses, ADO.NET, ASP.NET et Windows.Forms. Puisque ces composants ne sont pas couverts par les normes ECMA, ceux-ci restent sujets à l'inquiétude relevant des brevets et licences détenues par Microsoft.

Les outils rassemblent les outils nécessaires au développement des applications .NET sur les plateformes autres que Windows. Ceci inclus l'EDI MonoDevelop ainsi que ses composants, comme son débogueur.

Le schéma suivant résume la situation du projet par rapport au .NET Framework ainsi que les séparations entre les différents composants et leurs disponibilités sur les principaux systèmes d'exploitation :

Structure du projet Mono et comparaison avec Microsoft .NET

  Licence

Mono est distribué sous double licence par Novell, comme d'autres produits tels que la suite Mozilla. Le compilateur C# et les outils de Mono sont distribués sous licence GNU GPL (v2 seulement ; à partir de la version 2.0 de Mono, le code source du compilateur C# sera aussi disponible sous licence MIT X11)[2]. Les bibliothèques d'exécution sont publiées sous licence GNU LGPL (v2 seulement) et les bibliothèques de classes, sous licence MIT. Toutes ces licences sont libres et open-sources, faisant du projet Mono un projet libre et ouvert.

  Mono et les brevets de Microsoft

Le portage vers Mono de composants .NET non soumis à l'ECMA pour standardisation a été, dès le début, une source de préoccupations concernant des violations de brevets logiciels. En particulier, des discussions ont eu lieu à propos d'une éventualité où Microsoft pourrait détruire le projet Mono par des poursuites pour violations de brevets.

Les technologies à la base de Mono, soumises à l'ECMA, ne sont pas problématiques. Ceci inclut aussi la couche de compatibilité Mono/Linux/GNOME, qui n'utilise pas des technologies pouvant être couvertes par des brevets de Microsoft. Donc, C#, les bibliothèques et autres couches logicielles du projet GNU ne sont pas concernés par ces préoccupations.

Cependant, il en est autrement pour la couche de compatibilité Microsoft, qui concerne les technologies composant le framework .NET. Celles-ci incluent, entre autres, ASP.NET, ADO.NET, la couche communication du framework .NET 3.0 (Windows Communication Foundation) et Windows.Forms. Ces technologies ne sont pas encore totalement implémentées dans Mono ; Richard Stallman a déclaré qu'il peut être « dangereux » d'utiliser Mono à cause des possibilités d'infractions aux brevets de Microsoft[3]. Néanmoins, l'utilisation des composants possiblement problématiques n'est pas requise pour programmer des 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[4]. Selon Miguel de Icaza, chef du développement de Mono, le projet Mono est concerné par cet accord, mais uniquement pour les développeurs de Novell et pour leurs clients[5]. Ceci a été critiqué par de nombreux acteurs du mouvement pour les logiciels libres, car cela viole les principes d'égalité de droits entre tous les utilisateurs d'un programme particulier définis pour les logiciels libres[6],[7],[8].

  Projet utilisant Mono

  • La société unity3D (Mac) a porté son environnement sous Windows qui génère des fichiers binaires écrits en C# grâce au compilateur Mono.
  • Second Life utilise mono pour son moteur de script. Cela a permis d'augmenter les performances de façon importante.

  Notes et références

  Voir aussi

  Articles connexes

  Liens externes

   
               

 

All translations of Mono_(logiciel)


sensagent's content

  • definitions
  • synonyms
  • antonyms
  • encyclopedia

  • définition
  • synonyme

Dictionary and translator for handheld

⇨ New : sensagent is now available on your handheld

   Advertising ▼

sensagent's office

Shortkey or widget. Free.

Windows Shortkey: sensagent. Free.

Vista Widget : sensagent. Free.

Webmaster Solution

Alexandria

A windows (pop-into) of information (full-content of Sensagent) triggered by double-clicking any word on your webpage. Give contextual explanation and translation from your sites !

Try here  or   get the code

SensagentBox

With a SensagentBox, visitors to your site can access reliable information on over 5 million pages provided by Sensagent.com. Choose the design that fits your site.

Business solution

Improve your site content

Add new content to your site from Sensagent by XML.

Crawl products or adds

Get XML access to reach the best products.

Index images and define metadata

Get XML access to fix the meaning of your metadata.


Please, email us to describe your idea.

WordGame

The English word games are:
○   Anagrams
○   Wildcard, crossword
○   Lettris
○   Boggle.

Lettris

Lettris is a curious tetris-clone game where all the bricks have the same square shape but different content. Each square carries a letter. To make squares disappear and save space for other squares you have to assemble English words (left, right, up, down) from the falling squares.

boggle

Boggle gives you 3 minutes to find as many words (3 letters or more) as you can in a grid of 16 letters. You can also try the grid of 16 letters. Letters must be adjacent and longer words score better. See if you can get into the grid Hall of Fame !

English dictionary
Main references

Most English definitions are provided by WordNet .
English thesaurus is mainly derived from The Integral Dictionary (TID).
English Encyclopedia is licensed by Wikipedia (GNU).

Copyrights

The wordgames anagrams, crossword, Lettris and Boggle are provided by Memodata.
The web service Alexandria is granted from Memodata for the Ebay search.
The SensagentBox are offered by sensAgent.

Translation

Change the target language to find translations.
Tips: browse the semantic fields (see From ideas to words) in two languages to learn more.

last searches on the dictionary :

2122 online visitors

computed in 0.250s

   Advertising ▼

I would like to report:
section :
a spelling or a grammatical mistake
an offensive content(racist, pornographic, injurious, etc.)
a copyright violation
an error
a missing statement
other
please precise:

Advertize

Partnership

Company informations

My account

login

registration

   Advertising ▼