Como continuación a la entrada anterior Instalar Monodevelop en Raspberry Pi, y como prometí al final de la misma, vamos a crear un pequeño programa en C# en la Raspberry, e incluso vamos a comprobar cómo es posible compilar un programa en Visual Studio en Windows y ejecutarlo en la Raspberry.

Empezamos accediendo al escritorio de la Raspberry y ejecutando el programa Monodevelop, que es un IDE para programar utilizando el .NET Framework Mono. En la siguiente imagen se puede ver el IDE sin ninguna Solución cargada.

Monodevelop

Pantalla de inicio del IDE Monodevelop

Creamos nuestra primera Solución o Proyecto a través de las opciones de menú Archivo, Nuevo, Solución… y eligiendo como plantilla Proyecto de consola.

Proyecto de consola

Nuevo proyecto de consola

En la siguiente pantalla introducimos el nombre del proyecto y solución así como la carpeta donde se guardarán todos los archivos del proyecto. Vamos a nombrar a nuestro proyecto/solución “HolaMundo”. Al pulsar sobre el botón Crear este es el resultado:

Hola Mundo

Código del programa Hola Mundo

Como véis, el IDE se encarga de crear la estructura del código necesaria para un proyecto simple de consola, que imprime en pantalla el texto “Hello World!”. Editamos este texto por “¡Hola Mundo!” y pulsamos F5 para ejecutar el programa. Y este es el resultado:

Salida programa

MonoDevelop Console

Nota: si no se muestra la Consola de MonoDevelop es posible que tengais que instalar xterm con el comando sudo apt-get install xtemr y reiniciar MonoDevelop.

Ahora vamos a compilar este mismo código en Visual Studio 2015 en un PC con Windows 10. A la hora de crear el proyecto en Visual Studio asegurarse que utilizamos la misma versión del .NET Framework en ambos sistemas (en estos momentos, la versión 4.6.2). Compilamos y copiamos el ejecutable de la carpeta \bin\Debug a la Raspberry a través de un cliente de FTP, dejando el archivo en la carpeta Desktop, por ejemplo:

Tranfiriendo archivo

Tranfiriendo archivo a la Raspberry

Ahora volvemos a la Raspberry y ejecutamos nuestro programa desde el terminal con el comando mono NombrePrograma.exe:

Ejecutando

Ejecutando programa

Y finalmente vemos el resultado, mostrar el texto “¡Hola Mundo!” en la consola de la Raspberry. A partir de aquí, se abre un mundo de posibilidades infinitas… por ejemplo, existen librerías en C# para controlar los conectores GPIO, utilizar la API de Telegram para controlar un bot… y cualquier cosa que se nos ocurra.

Fuente: Getting started with the Raspberry Pi 2, for .NET developers

En este tutorial se indican los pasos para instalar Mono y Monodevelop en una Raspberry Pi 3, para convertirla en un entorno de desarrollo utilizando el lenguaje de programación C#.

En primer lugar, necesitaremos una Rapberry Pi 3 totalmente operativa a la que nos podamos conectar por SSH para acceder a la consola de comandos de la Pi:

ssh

Cliente SSH conectado a una Raspberry Pi

Empezaremos actualizando el software de la Raspberry con los siguientes comandos, que descargarán e instalarán los paquetes que sean necesarios:

sudo apt-get update
sudo apt-get upgrade

Para instalar el Mono .NET Framework debemos antes añadir repositorios de paquetes adicionales a los que trae la Raspberry por defecto. Primero añadimos la clave de firma PGP del proyecto Mono con el siguiente comando:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF

Luego añadimos los repositorios adicionales necesarios con estos dos comandos:

echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
echo "deb http://download.mono-project.com/repo/debian wheezy-apache24-compat main" | sudo tee -a /etc/apt/sources.list.d/mono-xamarin.list

Después de añadir estos dos repositorios, debemos actualizar de nuevo la Raspberry con los comandos sudo apt-get update y sudo apt-get upgrade (y si eres un poco paranoico, sudo reboot para reiniciar el equipo).

Por último, la Raspberry ya está en condiciones de instalar los paquetes de Mono .Net Framework con el siguiente comando:

sudo apt-get install mono-complete

Se mostrarán los paquetes a instalar, y se nos pedirá confirmación. El proceso tardará al menos unos 5 minutos y se requieren al menos 210 MB. de espacio disponible. Si además queremos instalar el IDE integrado Monodevelop, introduciremos este comando

sudo apt-get install monodevelop

En este caso la instalación requiere 68,8 MB. adicionales. Una vez finalizada la instalación, si accedemos al escritorio de la Raspberry, veremos que en el menú Programación tenemos disponible una nueva opción: Monodevelop, que nos permitirá acceder al IDE de Mono y empezar a desarrollar nuestros primeros programas en C# en la Raspberry.

Monodevelop

IDE Monodevelop en Raspberry Pi

En una próxima entrada veremos cómo podemos crear nuestro primer programa en C# en la Raspberry.

Fuente: Getting started with the Raspberry Pi 2, for .NET developers

Dart, lenguaje de programación Google ha dado a conocer hoy su nuevo lenguaje de programación, Dart.

Según la información publicada en la web oficial (dartlang.org), es un lenguaje estructurado para la programación web que ha sido creado pensando en la simplicidad, eficiencia y escalabilidad, utilizando un lenguaje natural y familiar para el programador.

Puede ser ejecutado en los navegadores Chrome, Safari5+ o Firefox4+ (a través de un traductor que lo convierte a código javascript), además de en teléfonos móviles, tabletas y servidores web.

El proyecto es open-source y está en fase de borrador.

Así es como queda el famoso “Hola, Mundo” en lenguaje Dart:

main() {
  print('Hello, Dart!');
}

¿Demasiado parecido a Javascript, no?

Microsoft Office AccessEstas dos últimas semanas las he dedicado a leer el libro “Access, automatización de tareas con VBA” de Anaya Multimedia, que me ha servido para refrescar y dar un repaso a mis conocimientos sobre este programa. Os recomiendo su lectura porque la traducción es muy buena y está todo muy bien explicado, con un lenguaje muy claro, aunque se hecha de menos que no profundice lo suficiente en algunos temas.Continúa leyendo