mono

La troisième partie du projet Mono sponsorisée par Novell a été développée comme étant une implémentation open-source du .NET Framework telle que définie par les standards de l'ECMA. L'implémentation Mono a pour but de fonctionner sur Linux, Solaris, Mac OS, BSD, HP-UX et Windows. Mono inclut le runtime, la bibliothèque de classes, les compilateurs pour VB.NET et C#. La version actuelle supporte presque toutes les APIs de la version 1.1 du .NET de Microsoft et presque 96% des APIs de la version 2.0 (du .NET de Microsoft). L'implémentation des autres bibliothèques du .NET 3.0 et 3.5 est en cours. L'implémentation de C# 3.0 et de Linq en sont à leur début.

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.

Développement

MonoDevelop est un environnement de développement intégré libre de GNOME conçu pour C# et les autres langages .NET. Il a initialement été un portage de SharpDevelop sous GTK+, mais il a évolué de bien des manières depuis son portage. MonoDevelop fait partie du projet Mono.

MonoDevelop

Ressources