Proyecto mono historia

Solo disponible en BuenasTareas
  • Páginas : 7 (1518 palabras )
  • Descarga(s) : 0
  • Publicado : 27 de septiembre de 2010
Leer documento completo
Vista previa del texto
PROYECTO MONO

Historia.

Este proyecto se construye a base de los estándares ECMA, publicados por Microsoft, de la plataforma de desarrollo .NET con el fin de proporcionar un nuevo marco de desarrollo para aplicaciones multiplataforma, especialmente a los sistemas tipo UNIX: GNU/Linux. Comprende un entorno de ejecución, compiladores y librerías de clases.

Iniciado por Miguel de Icaza(fundador del proyecto GNOME) y representa un gran avance para dotar al ambiente Linux de un buen impulso. El lenguaje de programación base es el C# (C sharp), el cual fue propuesto por Microsoft como un estándar, que viene siendo un Java modificado, lo que proporciona a los programadores de todo tipo de facilidades para realizar "mas y mejores" aplicaciones en GNOME, y en general en Linux, y a lavez disponer de portabilidad hacia otros sistemas operativos.

Gnome siempre usó C para diseñar sus APIs con una serie de restricciones para poder lograr que se usaran múltiples lenguajes de programación, lo cual se estaba buscando. Y entonces cuando Microsoft.NET se anuncia y los documentos técnicos surgieron, toma forma el proyecto MONO y es que Microsoft había resuelto el problema: comosoportar un API en varios lenguajes al mismo tiempo.

Mono puede ser usado en dos modalidades: aplicación completa en Mono o aplicación sumergida. Las aplicaciones completas estarán escritas completamente en un lenguaje de .NET mientas que las aplicaciones sumergidas permitirán que se use todo el código existente de C y se "extienda" con C#. Es decir, que mono es "empotrable", de la misma manera que esposible empotrar Python o Tcl en un programa.

Este sistema permite distribuir un único programa binario para todas las arquitecturas en vez de un programa específico para cada plataforma. Con Mono se pueden escribir aplicaciones en múltiples lenguajes de programación, incluyendo entre ellos Python, Object Pascal, Nermele, y C#. Una vez escritas las aplicaciones se traducen a CIL (CommonIntermediate Language), que es un lenguaje intermedio que no tiene particularidades de ninguna arquitectura. Ya compilado en CIL la aplicación se traduce al lenguaje específico de la arquitectura final donde se ejecutará.

Se tiene la libertad de escoger cualquier lenguaje de programación o combinación de ellos y poder ejecutar la aplicación en cualquiera de las plataformas en las que Mono seencuentra disponible: Intel, AMD64, SPARC, StrongArm y S390x. Mono actualmente proporciona las herramientas para crear aplicaciones para Linux (diversas distribuciones), Solaris, Windows, Mac/OS, y mainframes de IBM. A diferencia de los programas tradicionales que se ejecutan sobre el sistema directamente, los programas en la plataforma Mono se ejecutan sobre un entorno controlado de ejecución conocidocomo la máquina virtual

Mono proporciona las funciones necesarias para crear servicios web, esto incluye las tecnologías XML, SOAP, ASP.NET, y Remoting así como el acceso a bases de datos, a través ADO.NET, de tipo Oracle, MySQL, DB2, SQL Server, o Progress. Con estas librerías se puede portar servicios desarrollados en Windows o escribir los propios utilizando Apache como servidor web. Para eldesarrollo de interfaces de usuario para aplicaciones cliente las opciones son múltiples. Por un lado se proporciona una implementación en código abierto de System.Windows.Forms (que es la opción que proporciona Microsoft) para que los desarrollos realizados en plataforma .Net sobre Windows puedan ser ejecutados en otras plataformas como Linux o Mac OS. También se proporciona GTK# una librería queexpone toda la funcionalidad del entorno gráfico de Gnome y que permite realizar aplicaciones multiplataforma.

Los Componentes

Existen varios componentes que conforman Mono:

Compilador de C#.- El compilador de C # es característica completa para la compilación de C#1.0 y 2.0 (ECMA), y también contiene muchas características del C# 3.0.

Mono Runtime o ambiente de ejecución MONO.- Que...
tracking img