Mono Tools en Visal Studio / Miguel de Icaza
Tu calendario está en lo correcto, no estamos en el día de los inocentes: el proyecto Mono, la implementación libre de la plataforma .NET de Microsoft, ha liberado Mono Tools para Visual Studio, un conjunto de herramientas que buscan simplificar el desarrollo de aplicaciones para Mono en Linux desde Visual Studio.
Con Mono Tools, cualquier desarrollador .NET que utilice Visual Studio puede ser asistido para que su aplicación sea compatible con Mono y Linux, usando las herramientas disponibles en este popular entorno de desarrollo integrado. Y no sólo se trata de codificar y compilar aplicaciones, la integración es bastante avanzada e integra diversas tecnologías para facilitar la vida del desarrollador.
Mono Tools permite llevar las aplicaciones desde Visual Studio directamente a una máquina con Linux. A través de UPnP puede buscar automáticamente equipos con Linux en la red local, o bien el usuario puede indicar el nombre de host o ip del servidor al que se quiere conectar para instalar y dejar andando su aplicación.
La depuración de aplicaciones corriendo en Linux se hace directamente desde Visual Studio. El depurador de Visual Studio se conecta al equipo con Linux para hacer depuración en forma remota, de esta forma todas las capacidades de depuración de Visual Studio se pueden usar con una aplicación corriendo en Linux.
Una de las preocupaciones de los desarrolladores en .NET que desean llevar sus aplicaciones a Mono tiene que ver con el nivel de compatibilidad entre esta implementación y la propia de Microsoft. Para cubrir estas preocupaciones, se incluyó la herramienta MOMA (Mono Migration Analysis) que a través de Visual Studio permite detectar aspectos que pueden afectar la compatibilidad con Mono, por ejemplo alguna API que aún no esté implementada.
Si esto parece fantástico, aún quedan un par de características inimaginables hasta hace poco en Visual Studio. Una de ellas es una herramienta para generar los paquetes RPM de tu aplicación, de esta forma puedes fácilmente crear un archivo de instalación para distribuciones basadas en RPM, como por ejemplo OpenSUSE.
Finalmente y aplicando varias tecnologías, Mono Tools se integra con SUSE Studio para crear appliances que contienen tu aplicación y todo el sistema operativo que necesita para correr. De esta forma Visual Studio genera un archivo que cualquier usuario puede usar para levantar tu aplicación junto a un sistema completamente funcional desde CD, unidades USB o incluso como imagen de disco de una máquina virtual.
Mono Tools se estuvo desarrollando hace poco más de un año en Novell, antes no se podía pensar en una extensión de este tipo para Visual Studio ya que Microsoft había puesto una restricción para que estas extensiones sólo fueran dirigidas a sistemas Windows, restricción que fue eliminada hace un par de años. ¿Alguien más se quiere quejar del acuerdo Microsoft-Novell?
Links:
– Mono Tools for Visual Studio (blog de Miguel de Icaza)
– Novell brings Mono to Microsoft’s Visual Studio (InternetNews)