Site icon RibosoMatic

Introducción a Mono y Primera Aplicación en C#

El proyecto Mono es una plataforma de desarrollo mutliplataforma usando .NET Framework.

El proyecto Mono ha llamado mi atención desde hace ya buen tiempo. He estado probándolo desde Ubuntu en una versión anterior. Pero en esta ocasión y con la versión actual vamos a probarlo desde plataforma Windows. En primer lugar para lo que no hayan escuchado de Mono, pues es una plataforma de software diseñada para permitir a los desarrolladores crear aplicaciones multi-plataforma de forma sencilla. Es una implementación de código abierto del .NET Framework de Microsoft basada en los estándares ECMA para C# y Common Language Runtime (CLR). Puedes encontrar mas información que explica mejor esto en los siguiente enlaces:

Vamos a empezar instalando los paquetes necesarios para el primer uso, luego codificaremos en lenguaje C# el cual usaremos en este y próximas entregas.

  1. Instala la plataforma de desarrollo Mono. Descarga el paquete desde http://www.go-mono.com/mono-downloads/download.html. Seleccionamos la plataforma Windows, descargamos e instalamos.
  2. Instalar el IDE. Bien ahora vamos a descargar el entorno para desarrollar nuestras aplicaciones. Descargaremos Xamarin Studio (llamado tambien MonoDevelop) desde http://monodevelop.com/Download, seleccionamos la versión estable y también tendremos que descargar e instalar dos paquetes adicionales: el SDK para Windows .NET Framework 4 y GTK (bibliotecas de objetos y funciones para crear interfaces gráficas de usuario) para Windows.
    Recomendación: Instala estos 2 últimos paquetes descritos antes de instalar el entorno de desarrollo Xamarin Studio.

Vamos a crear una pequeña aplicación para probar: detectar que versiones del .NET Framework tenemos instalada en nuestro equipo.
Abrir Xamarin Studio : Clic en New ó Archivo > Nuevo > Solución.

 
En el cuadro de dialogo: En el listado izquierdo seleccionamos C# y Proyecto de consola y le damos un nombre a nuestro proyecto, finalmente OK.

Automáticamente se creará un archivo Program.cs que contiene la clase MainClass con el método Main que es el punto de inicio en toda aplicación desarrollada en C#.
Ahora vamos a agregar otro método ó función que realizará la labor de listar las versiones de .Net Framework instaladas. Luego del método Main, copia y pega lo siguiente:

private static void GetVersionFromRegistry() { using (RegistryKey ndpKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey(@"SOFTWARE\Microsoft\NET Framework Setup\NDP\")) { foreach (string versionKeyName in ndpKey.GetSubKeyNames()) { if (versionKeyName.StartsWith("v")) { RegistryKey versionKey = ndpKey.OpenSubKey(versionKeyName); string name = (string)versionKey.GetValue("Version", ""); string sp = versionKey.GetValue("SP", "").ToString(); string install = versionKey.GetValue("Install", "").ToString(); if (install == "") //no install info, ust be later Console.WriteLine(versionKeyName + " " + name); else { if (sp != "" && install == "1") { Console.WriteLine(versionKeyName + " " + name + " SP" + sp); } } if (name != "") { continue; } foreach (string subKeyName in versionKey.GetSubKeyNames()) { RegistryKey subKey = versionKey.OpenSubKey(subKeyName); name = (string)subKey.GetValue("Version", ""); if (name != "") sp = subKey.GetValue("SP", "").ToString(); install = subKey.GetValue("Install", "").ToString(); if (install == "") //no install info, ust be later Console.WriteLine(versionKeyName + " " + name); else { if (sp != "" && install == "1")
  { Console.WriteLine(" " + subKeyName + " " + name + " SP" + sp); } else if (install == "1") { Console.WriteLine(" " + subKeyName + " " + name); } } } } } } }

Aparte de este método tendremos que incluir el espacio de nombre Microsoft.Win32, esta linea irá en la parte superior luego de using System; deberia quedar así:

using System; using Microsoft.Win32;

En el método Main tendremos que llamar a la función que hemos creado, debería quedar asi:

public static void Main (string[] args) { //Console.WriteLine ("Hello World!"); GetVersionFromRegistry (); }

Finalmente ejecutamos la aplicación presionando Ctrl+F5:

Este código quizá no sea tan funcional pero lo que queríamos mostrar era un ejemplo inicial de como instalar y usar Mono y Xamarin Studio para desarrollar una aplicación. En futuras entregas veremos mas del proyecto Mono y aplicaciones con interfaz gráfica.