
Mono es el nombre de un proyecto de código abierto iniciado por Ximian y actualmente impulsado por Novell (tras su adquisición de Ximian para crear un grupo de herramientas libres, basadas en GNU/Linux y compatibles con .NET según lo especificado por el ECMA.
Mono posee importantes componentes útiles para desarrollar software:
* 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 biblioteca de clases que puede funcionar en cualquier lenguaje que funcione en el CLR (Common Language Runtime).
* Un compilador para el lenguaje C#, MonoBasic (la versión para mono de Visual Basic), Java y Python.
* El CLR y el Sistema de tipos común (CTS) permite que la aplicación y las bibliotecas sean escritas en una amplia variedad de lenguajes diferentes que compilen para byte code.
* Esto significa por ejemplo, que si defines una clase que haga una manipulación algebraica en C#, esa clase puede ser reutilizada en cualquier lenguaje que soporte el “CLI”. Puede crear una clase en C#, una subclase en C++ e instanciar esa clase en un programa en Eiffel.
* Un sistema de objetos único, sistema de hilos, bibliotecas de clases y sistema recolector de memoria pueden ser compartidos por todos estos lenguajes.
* Es un proyecto independiente de la plataforma. Actualmente Mono corre sobre Linux, FreeBSD, UNIX, Mac OS X, Solaris y plataformas Windows.
Tan pronto como Microsoft publicó los documentos que especifican la arquitectura .NET en diciembre de 2000, Miguel de Icaza (Co-fundador de la empresa Ximian, fundador y presidente de la GNOME Foundation) comenzó a interesarse en ellos.
GNOME siempre había luchado por proporcionar facilidades al programador y una de las características más conocidas es que existen multitud de bindings para poder utilizar cualquier lenguaje de programación para desarrollar aplicaciones. Pero la elaboración de dichos bindings era tremendamente laboriosa y cada vez que se realizaba un cambio en la interfaz original, era necesario cambiar todos y cada uno de los bindings.
Para intentar mejorar y facilitar la reutilización de código se realizó una implementación de componentes, llamada Bonobo, utilizando CORBA. Pero tampoco ha tenido éxito, ya que era necesario que todo el software utilizase esa característica y eso no fue así. Por tanto, con .NET se abre una nueva puerta para conseguir hacer de GNOME en un futuro un escritorio mejor y más atractivo tanto para usuarios como para programadores. Con esta tecnología por fin se consigue lo que el proyecto GNOME siempre había buscado, independencia del lenguaje para programar en dicho escritorio.
Miguel de Icaza, después de analizar el intérprete del byte code, advierte que no existen especificaciones. En febrero de 2001 comienza a indagar por dicha información en las listas de correo de .NET y al mismo tiempo comienza a trabajar en un compilador C# en cooperación con Rhys Weatherley y Jay Freeman, el mismo fue programado en C# como un ejercicio para demostrar su potencia.
En abril de 2001, la ECMA publica el formato de archivos faltante y en GUADEC (6 al 8 de abril de 2001) Icaza demuestra las habilidades de su compilador. Después de un minucioso análisis, donde claramente se concluye que es posible construir esa tecnología, Ximian reasigna recursos humanos de otros proyectos y crea el equipo Mono. Aspirando a tener una herramienta que fuese un sustituto completo de la tecnología .NET, formaron The Mono Open Source Project, el cual fue anunciado en julio de 2001, en la conferencia de O’Reilly.
Mono posee importantes componentes útiles para desarrollar software:
* 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 biblioteca de clases que puede funcionar en cualquier lenguaje que funcione en el CLR (Common Language Runtime).
* Un compilador para el lenguaje C#, MonoBasic (la versión para mono de Visual Basic), Java y Python.
* El CLR y el Sistema de tipos común (CTS) permite que la aplicación y las bibliotecas sean escritas en una amplia variedad de lenguajes diferentes que compilen para byte code.
* Esto significa por ejemplo, que si defines una clase que haga una manipulación algebraica en C#, esa clase puede ser reutilizada en cualquier lenguaje que soporte el “CLI”. Puede crear una clase en C#, una subclase en C++ e instanciar esa clase en un programa en Eiffel.
* Un sistema de objetos único, sistema de hilos, bibliotecas de clases y sistema recolector de memoria pueden ser compartidos por todos estos lenguajes.
* Es un proyecto independiente de la plataforma. Actualmente Mono corre sobre Linux, FreeBSD, UNIX, Mac OS X, Solaris y plataformas Windows.
Tan pronto como Microsoft publicó los documentos que especifican la arquitectura .NET en diciembre de 2000, Miguel de Icaza (Co-fundador de la empresa Ximian, fundador y presidente de la GNOME Foundation) comenzó a interesarse en ellos.
GNOME siempre había luchado por proporcionar facilidades al programador y una de las características más conocidas es que existen multitud de bindings para poder utilizar cualquier lenguaje de programación para desarrollar aplicaciones. Pero la elaboración de dichos bindings era tremendamente laboriosa y cada vez que se realizaba un cambio en la interfaz original, era necesario cambiar todos y cada uno de los bindings.
Para intentar mejorar y facilitar la reutilización de código se realizó una implementación de componentes, llamada Bonobo, utilizando CORBA. Pero tampoco ha tenido éxito, ya que era necesario que todo el software utilizase esa característica y eso no fue así. Por tanto, con .NET se abre una nueva puerta para conseguir hacer de GNOME en un futuro un escritorio mejor y más atractivo tanto para usuarios como para programadores. Con esta tecnología por fin se consigue lo que el proyecto GNOME siempre había buscado, independencia del lenguaje para programar en dicho escritorio.
Miguel de Icaza, después de analizar el intérprete del byte code, advierte que no existen especificaciones. En febrero de 2001 comienza a indagar por dicha información en las listas de correo de .NET y al mismo tiempo comienza a trabajar en un compilador C# en cooperación con Rhys Weatherley y Jay Freeman, el mismo fue programado en C# como un ejercicio para demostrar su potencia.
En abril de 2001, la ECMA publica el formato de archivos faltante y en GUADEC (6 al 8 de abril de 2001) Icaza demuestra las habilidades de su compilador. Después de un minucioso análisis, donde claramente se concluye que es posible construir esa tecnología, Ximian reasigna recursos humanos de otros proyectos y crea el equipo Mono. Aspirando a tener una herramienta que fuese un sustituto completo de la tecnología .NET, formaron The Mono Open Source Project, el cual fue anunciado en julio de 2001, en la conferencia de O’Reilly.
Web Oficial de MONO
Descargar MONO
No hay comentarios:
Publicar un comentario