domingo, 23 de septiembre de 2018

PROCEDIMIENTOS EN APP INVENTOR 2 (Parte 1)


¿QUE ES UN PROCEDIMIENTO?

Los Procedimientos son un elemento muy utilizado en la programación. Empaquetan y ‘aíslan’ del resto del programa, una parte de código que realiza alguna tarea específica. Son por tanto un conjunto de instrucciones que ejecutan una tarea determinada y que hemos encapsulado  para que nos sea muy sencillo de manipular y reutilizar. De esta manera no hace falta escribir una y otra vez el código, solo con llamar al procedimiento estaremos invocando a una parte del código, sin tener que copiar o manejar gran cantidad de bloques, simplificado a si la tarea de programar y consiguiendo un código más limpio.

UN EJEMPLO SENCILLO

Lo vemos con un ejemplo muy simple, un procedimiento que llamaremos “saludo”, que nos da una idea del funcionamiento general.

Para ello como siempre abriremos App Inventor y nos dirigiremos a nuestra pantalla de diseño, a la que arrastraremos una etiqueta, le cambiaremos el tamaño de letra a 24 y la casilla de texto la dejaremos vacía. Bien una vez hecho esto, nos dirigimos a la pantalla de bloques y en  pantalla arrastraremos nuestro bloque procedimiento, al que le cambiaremos el nombre que viene por defecto y le llamaremos saludo, seguido le uniremos el bloque poner etiqueta1.texto como, al que le añadiremos el siguiente texto “ Hola, este es el resultado del procedimiento saludo” y seguido uniremos también el bloque poner etiqueta1.colorDeTexto como al que le añadiremos el color rojo, tiene que quedar de la siguiente manera.

Bien ahora solo nos falta llamar al procedimiento, para ello utilizaremos el bloque cuando screen1.inicializa y dentro añadiremos el bloque “llamar Saludo”. Este bloque se ha generado automaticamente cuando hemos creado el procedimiento, y está situado en bloques → integrados → procedimientos. Tiene que quedar de la siguiente manera.

Bien ahora ejecutaremos la aplicación con nuestro método favorito, teniendo como resultado la siguiente imagen.

PROCEDIMIENTO CON PARÁMETROS

Los procedimientos en App Inventor se les puede añadir parámetros, para ello los bloques procedimientos contienen en su esquina superior izquierda una rueda dentada con la que podremos añadir tantos como necesitemos.

Como ejemplo del uso de parámetros vamos a crear un procedimiento muy simple, que nos dará un resultado dependiendo del valor que le pasemos en el parámetro. En este caso calculará el volumen de una esfera según el valor del radio (R). La fórmula de dicho volumen es: 4/3 * π  * R3.

Antes de comenzar añadiremos dos nuevas etiquetas a nuestro diseño, etiqueta2 y etiqueta, a la primera le cambiaremos el tamaño de letra a 24, y pondremos de texto “EL RESULTADO DEL CÁLCULO ES:”. A etiqueta3, le pondremos el tamaño de letra en 24, y la casilla de texto la dejaremos vacía.

Ahora solo nos queda programar la lógica de nuestra aplicación.  

Para ello crearemos una variable global a la que nombraremos como VolumenEsfera y que tendrá el valor de cero, y un nuevo procedimiento  al que le daremos el nombre de CálculoEsfera, y pulsando en la rueda dentada añadiremos un parámetro al que daremos el nombre de R2.

Seguido crearemos la fórmula matemática de nuestro ejemplo 4/3 * 3,14  * R2*R2*R2, donde R2 es nuestro nuevo parámetro, que sacaremos situando el cursor encima de dicho parámetro, y arrastrándolo a la posición que queramos dentro del código.

o bien arrastrando un bloque tomar variable, y seleccionando nuestro parámetro. Toda esta fórmula la asignaremos a nuestra variable global VolumenEsfera, que a su vez colocaremos dentro de nuestro bloque de procedimiento. Tiene que quedarnos de la siguiente manera.

Antes de continuar quiero aclarar que en App Inventor los parámetros definidos dentro de los procedimientos, son denominadas variables locales, y no pueden ser accedidas desde el exterior del procedimiento.  

Esta es una práctica muy recomendable que debemos seguir para que no entren en conflicto con otras variables del mismo nombre que puedan existir en el resto del programa, incluyendo las que pueden estar dentro de otros procedimientos que también hayamos definido en dicho programa.

Bien dada la explicación pasaremos a colocar dentro de nuestro procedimiento un bloque poner etiqueta3.como al que le añadiremos un bloque tomar variable, en el que escogeremos nuestra variable global VolumenEsfera, de esta manera nuestra etiqueta3 mostrará el cálculo del procedimiento, y quedará de la siguiente manera.

Lo siguiente y último por hacer es llamar a nuestro procedimiento, para ello nos dirigimos a bloques → integrados → procedimientos y escogeremos el bloque que se ha creado automáticamente al crear nuestro procedimiento y que situaremos en el bloque cuando Screen1.inicializa para que lo llame nada más arrancar nuestra aplicación, solo nos queda una última cosa, dar valor al parámetro que creamos en el procedimiento “R2”, aquí dejo que pongas el valor que tú quieras, yo para este ejemplo le pondré 1. Tiene que quedar de la siguiente manera.

Si  ejecutamos nuestra aplicación veremos el resultado del cálculo, podemos variar el valor de R2 para ver distintos resultados.


Bueno sin más me despido esperando que este artículo te sea de ayuda en tus futuros proyectos, no dudes en comentar cualquier duda. Un saludo.

https://youtu.be/d6rDGbTnbfc

No hay comentarios:

Publicar un comentario

Compartir archivos y texto con Sharing

En alguna ocasión, tendrás que crear una aplicación en app inventor en la que quieras mandar fotos y videos a otras aplicaciones instaladas ...