Ahora que conocemos los fundamentos, puede ser el momento de pasar a un editor de texto un poco más avanzado. Por ejemplo, en Windows podemos usar Notepad++, que es gratuito, destaca la sintaxis en colores, muestra el número de línea y columna en la que nos encontramos (lo que es útil para corregir errores), ayuda a encontrar las llaves emparejadas, realza la línea en la que nos encontramos, permite tabular y des-tabular bloques completos de código, tiene soporte para múltiples ventanas, etc.
El problema de Notepad++ es que sigue siendo necesario teclear la orden de compilación, ya sea volviendo a la pantalla de consola o desde el menú Ejecutar (o Run, si tenemos una versión en inglés).
Por eso, un segundo editor que puede resultar aún más interesante (aunque a cambio tiene menos "plugins" para ampliar sus funcionalidades) es Geany, que sí permite compilar y ejecutar nuestros programas sin necesidad de salir del editor:
No es sólo que la barra de herramientas tenga botones para Compilar y para Ejecutar. Es que además, en caso de error de compilación, se nos mostrará la lista de errores y se destacará (con un subrayado rojo) las líneas causantes de esos errores:
Si, por el contrario, todo ha sido correcto, la ventana que nos muestra la ejecución de nuestro programa se quedará pausada para que podamos comprobar los resultados:
La instalación de Geany en Linux es trivial: basta descargarlo usando nuestro gestor de paquetes (Synaptic o el que sea) y todo suele funcionar a la primera (si habíamos instalado Mono previamente). En Windows es fácil descargarlo desde su página oficial geany.org) pero no podremos compilar desde él directamente, porque lo habitual es que no sepa en qué ruta se encuentra nuestro compilador. Lo podemos solucionar abriendo un fuente en lenguaje C# y entrando al menú "Construir", en la opción "Establecer comandos de construcción":
Nos aparecerá una ventana de la que nos interesan dos casillas: la que permite escribir el comando para compilar y la del comando para ejecutar.
Si queremos utilizar Mono: en la primera casilla, pondremos la ruta completa de nuestro compilador Mono (mcs.exe) seguida por "%f" para indicar que hay que detallar a Mono el nombre de nuestro fichero actual. En la casilla "Ejecutar", escribiremos la ruta de "mono.exe" seguida por "%e.exe", para que a Mono se le indique el nombre del ejecutable que habremos obtenido al compilar.
De forma alternativa, podemos usar el propio compilador de ".Net" que viene incluido con Windows, y que se encontrará en el disco de sistema (habitualmente C:), en la carpeta de Windows, subcarpeta "Microsoft.NET", dentro de "Framework" o "Framework64" (según si queremos usar la versión de 32 bits o de 64 bits), en una carpeta que indica el número de versión de la plataforma .Net (por ejemplo, "v2.0.50727" para la versión 2; puede haber varias versiones instaladas). El compilador se llama "csc.exe", y, al igual que para Mono, la línea debe terminar con "%f" para decir a Geany que cuando lance el compilador debe indicarle el nombre del fichero que estamos editando:
C:\Windows\Microsoft.NET\Framework\v2.0.50727\csc "%f"
Esto habría sido muy trabajoso para compilar desde línea de comando nuestros primeros programas, pero una vez que usamos editores más avanzados, sólo hay que configurarlo una vez en Geany y se utilizará automáticamente cada vez que creemos un fuente en C# desde ese editor.
En este caso, en la casilla "Ejecutar" bastará con escribir "%e.exe", para que se lance directamente el ejecutable recién creado:
"%e.exe"
Nota: Las comillas dobles que rodean a "%e.exe" (y a "%f") permiten que se lance correctamente incluso si hubiéramos escrito algún espacio en el nombre del fichero (costumbre poco recomendable para un fuente de un programa).
Por supuesto, existen otros muchos editores gratuitos, que puedes utilizar sin gastar dinero y que harán tu rutina de programador mucho más cómoda que con el Bloc de Notas. Van desde editores sencillos como Notepad2 o Scite hasta entornos integrados, que usaremos dentro de poco para programas de mayor tamaño, en los que intervendrán varios ficheros fuente de forma simultánea. Es el caso de Visual Studio, Sharp Develop y MonoDevelop (o su versión modernizada y ampliada, Xamarin Studio), que veremos un poco más adelante, cuando nuestros programas lleguen a ese nivel de complejidad.