0b. Preparando las herramientas

Usaremos Mono como plataforma de desarrollo para nuestros primeros programas. Por eso, vamos a comenzar por ver dónde encontrar esta herramienta, cómo instalarla y cómo utilizarla.

Podemos descargar Mono desde su página oficial:

http://www.mono-project.com/

En la parte superior derecha aparece el enlace para descargar ("download now"), que nos lleva a una nueva página en la que debemos elegir la plataforma para la que queremos nuestro Mono. Nosotros descargaremos la versión más reciente para Windows (la 1.9.1 en el momento de escribir este texto).

Se trata de un fichero de algo más de 70 Mb. Cuando termina la descarga, hacemos doble clic en el fichero recibido y comienza la instalación, en la que primero se nos muestra el mensaje de bienvenida:

El siguiente paso será aceptar el acuerdo de licencia.

Después se nos muestra una ventana de información, en la que se nos avisa de que se va a instalar Mono 1.9.1, junto con las librerías Gtk# para creación de interfaces de usuario y XSP (eXtensible Server Pages, un servidor web).

A continuación se nos pregunta en qué carpeta queremos instalar. Como es habitual, se nos propone que sea dentro de "Archivos de programa":

Yo no soy partidario de instalar todo en "Archivos de Programa". Mis herramientas de programación suelen estar en otra unidad de disco (D:), así que prefiero cambiar esa opción por defecto:

El siguiente paso es elegir qué componentes queremos instalar (Mono, Gtk#, XSP):

Nuevamente, soy partidario de no instalar todo. Mono es imprescindible. La creación de interfaces de usuario con Gtk# queda fuera del alcance que se pretende con este texto, pero aun así puede ser interesante para quien quiera profundizar. El servidor web XSP es algo claramente innecesario por ahora, y que además instalaría un "listener" que ralentizaría ligeramente el ordenador, así que puede ser razonable no instalarlo por ahora:

El siguiente paso es indicar en qué carpeta del menú de Inicio queremos que quede accesible:

A continuación se nos muestra el resumen de lo que se va a instalar. Si confirmamos que todo nos parece correcto, comienza la copia de ficheros:

Si todo es correcto, al cabo de un instante tendremos el mensaje de confirmación de que la instalación se ha completado:

Mono está listo para usar. En nuestro menú de Inicio deberíamos tener una nueva carpeta llamada "Mono 1.9.1 for Windows", y dentro de ella un acceso a "Mono-1.9.1 Command Prompt":

Si hacemos clic en esa opción, accedemos al símbolo de sistema ("command prompt"), la pantalla negra del sistema operativo, pero con el "path" (la ruta de búsqueda) preparada para que podamos acceder al compilador desde ella:

Primero debemos teclear nuestro fuente. Para ello podemos usar cualquier editor de texto. En este primer fuente, usaremos simplemente el "Bloc de notas" de Windows. Para ello tecleamos:

notepad ejemplo01.cs

Aparecerá la pantalla del "Bloc de notas", junto con un aviso que nos indica que no existe ese fichero, y que nos pregunta si deseamos crearlo. Respondemos que sí y podemos empezar a teclear el ejemplo que habíamos visto anteriormente:

Guardamos los cambios, salimos del "Bloc de notas" y nos volvemos a encontrar en la pantalla negra del símbolo del sistema. Nuestro fuente ya está escrito. El siguiente paso es compilarlo. Para eso, tecleamos

gmcs ejemplo01.cs 

Si no se nos responde nada, quiere decir que no ha habido errores. Si todo va bien, se acaba de crear un fichero "ejemplo01.exe". En ese caso, podríamos lanzar el programa tecleando

mono ejemplo01 

y el mensaje "Hola" debería aparecer en pantalla.

Si en nuestro ordenador está instalado el "Dot Net Framework" (algo que debería ser cierto en las últimas versiones de Windows), no debería hacer falta decir que queremos que sea Mono quien lance nuestro programa, y podremos ejecutarlo directamente con su nombre:

ejemplo01 

Nota: Si quieres un editor más potente que el Bloc de notas de Windows, puedes probar Notepad++, que es gratuito (realmente más que eso: es de "código abierto") y podrás localizar fácilmente en Internet.