Universidad Nacional Autónoma de México
Dirección General de Servicios de Cómputo Académico
Año 7 Núm. 74, Publicación Mensual, 27 de Noviembre de 2008

ARTÍCULOS

 

Año 4, Número 44, Noviembre de 2005

Proyecto MONO

Mario Alberto Arredondo Guzmán

 

El proyecto Mono es una iniciativa abierta propuesta por Miguel de Icaza1, que hace la contraparte de software libre a .Net, (proyecto de Microsoft para crear una plataforma de desarrollo de software con independencia de plataforma y que permite un rápido desarrollo de aplicaciones). Mono pretende implementar las tecnologías desarrolladas por Microsoft (como C# y el lenguaje común de infraestructura CLI) que han sido estandarizadas por la European Computer Manufacturers Association (ECMA).

Los componentes más importantes de Mono son:

  • Una máquina virtual de lenguaje común de infraestructura (CLI) que contiene un cargador de clases, un compilador en tiempo de ejecución (JIT), y unas rutinas de recolección de memoria.
  • Una librería de clases que puede trabajar en cualquier lenguaje que funcione en el Common Language Runtime (CLR).
  • Compilador(es).

Patrocinado por Ximian (Novell), el proyecto Mono cuenta con una muy entusiasta y productiva comunidad, tanto de desarrolladores como de usuarios. Mono también incluye herramientas necesarias para ejecutar aplicaciones .Net (cliente y servidor) y es una alternativa para los desarrollos de aplicaciones Linux y otras plataformas.

Algo relevante para este entorno de desarrollo es que el CLR y el Sistema de Tipos Común (CTS) permiten que la aplicación y las bibliotecas sean escritas en una amplia variedad de lenguajes que compilen código intermedio o “bytecode”. Esto significa que si se tiene una aplicación escrita en el lenguaje C#, las clases que fueron creadas originalmente en ese lenguaje podrán ser reutilizadas en cualquier otro soporte CLI (Lenguaje Común de Infraestructura), es decir, las clases escritas en C#, por ejemplo, podrán ser usadas en otras aplicaciones escritas en lenguajes diferentes como C++ o Phyton.

Una de las aplicaciones más interesantes que tiene que ver con el proyecto es Mono Develop, un Entorno de Desarrollo Integrado (IDE) diseñado especialmente para el desarrollo de proyectos con Mono y para el escritorio Gnome (no quiere decir que no se pueda ejecutar en algún otro escritorio). Aunque existen otros entornos de desarrollo para este proyecto como Eclipse, Mono Develop es la mejor opción para la programación en Mono.

Algunas de las características más importantes de Mono Develop son:

  • Gestor y visor de clases.
  • Auto-complexión del código.
  • Soporte de proyectos.
  • Asistentes de configuración.
  • mod_mono (módulo para el servidor Web Apache).

Se podría pensar en el riesgo de que Microsoft dejara de contribuir con ECMA lo cual haría, probablemente, que el proyecto Mono se estancara o se volviera obsoleto de alguna manera; sin embargo, dentro de la comunidad Mono se cree que esta posibilidad es lejana y que, de darse, no afectaría de manera contundente, pues la plataforma por sí misma sería ya un proyecto suficientemente importante.

Uno de los proyectos más importantes de software libre en este momento es Mono; por lo tanto, valdría la pena comenzar a hacer algunas pruebas y tomarlo como una buena alternativa para programar nuestras aplicaciones.

Asimismo, ya algunas distribuciones de Linux cuentan con lo necesario para desarrollar aplicaciones Mono dentro de su sistema base; incluso, para quienes estén interesados, existe una distribución basada en Knoppix que está diseñada específicamente para ello: Monoppix (http://www.monoppix.com/) un LIVE-CD, donde el sistema puede ejecutarse sin necesidad de ser instalado en el disco duro, simplemente se inicia la computadora desde el CD-ROM, para tener un sistema Linux funcionando y listo para comenzar a programar.

La versión actual de Mono (al momento de escribir este artículo) es la 1.1.8.3 y la de Mono Develop es 0.7.

Y por si se preguntan, el por qué del nombre, esto es lo que responden en la página del proyecto.

What does the name “Mono” mean?

Mono is the word for monkey’in Spanish. We like monkeys.

Para mayor información:

Inicio | Contacto |