domingo, 22 de enero de 2017

Consola Educativa para Processing.

Cuando entramos en contacto con el lenguaje de programación Processing no podemos dejar de quedar cautivados. Han logrado una capa por encima de Java que simplifica notablemente la programación y cuya relación resultados/líneas de código es importante.

Impresiona la capacidad gráfica del lenguaje y especialmente la simplicidad de manejo del IDE. Pero seguramente por muy bueno que sea algo, encontraremos alguna pega.

Como profesor, cuando explico  lenguajes de programación a alumnos/as (bachillerato) me gusta empezar de forma clásica con entradas por el teclado y salidas por la pantalla, para analizar las estructuras clásicas de programación. Y ahí es donde Processing pierde agua o al menos yo no he encontrado una solución aceptable. Tiene un modo REPL e incluso entre las librerías hay una consola...probadas ...y...siguen sin convencerme.

Por ello decidí hacer mi propia consola. Aún está muy verde, ¡pero funciona! Como se me echa el tiempo encima, la publico en estado algo chapucero.

MODO DE EMPLEO.

Aún no la he convertido en librería, por lo que hay que crear un sketch con Processing y darle en el menú a sketch->Añadir Archivo. Debemos añadir el archivo que descargamos a continuación del siguiente enlace que se llama consola.pde

Enlace al Archivo.

ESQUELETO DEL SKETCH PARA USAR LA CONSOLA.

Consola C; //Declaramos la consola de forma global.

void setup()
{
  size(800,600); //Establecemos las dimensiones de la consola.
  C = new Consola(); //Instanciamos la consola con los valorres por defecto.
  thread("programa"); //Llama a la función que contiene el programa a ejecutar en la consola.
}
void draw()
{
C.display(); //bucle display.
}
void keyPressed(){
 C.keyboard(key); //lectura constante del teclado.
}
void programa()
{
  /*
    AQUÍ SE METE EL PROGRAMA QUE QUEREMOS EJECUTAR EN LA CONSOLA
  */
  C.println("Hola Mundo"); //Ejemplo "hola mundo"
}

La parte azul siempre es igual y si quiere se copia tal cual. Los programas que queremos ejecutar en la consola los metemos sustituyendo la parte roja.

COMANDOS INCORPORADOS.

C.printl("texto") Salida por la pantalla. Imprime un texto en la línea SIN RETORNO DE CARRO. Todas las frases escritas con este método saldrán seguidas.

C.println("texto") Salida por la pantalla. Imprime un texto en la línea CON RETORNO DE CARRO. Todas las frases escritas con este método saldrán en líneas distintas.

C.input("texto") Entrada de teclado. Espera a que el usuario teclee un texto, número o similar y cuando le damos a intro el comando devuelve la frase tecleada. Para convertir a número hay que usar la función parseInt() o parseFloat(). El texto que metemos entrecomillado aparece en la pantalla como sugerencia de los datos que debemos introducir.

FUNCIONES DE LA CONSOLA.


  • Si pulsamos la flecha arriba o abajo podemos desplazar y ver los resultados ocultos.
  • Cuando instanciamos la consola en la segunda línea del setup podemos usar:
    •  C = new Consola(tamaño de letra); de este modo podemos ampliar el tamaño de la letra, para personas que no vean bien o para proyectar con un proyector de vídeo.
    • C = new Consola(tamaño de letra, color de fuente, color de fondo); Para además cambiar el color de la fuente y del fondo.

EJEMPLOS.

Descarga un programa que suma dos números pedidos por el teclado.

Enlace.

POR HACER.

  • Cuando estamos haciendo entradas por teclado, la tecla borrar (backspace) no funciona. Arreglar.
PANTALLAZOS.







No hay comentarios:

Publicar un comentario