Robótica Educativa con Q-Scout

3. Programación por bloques

Un programa es una serie o secuencia de comandos que se le hacen al procesador de una computadora, celular, robot u otro dispositivo electrónico para que este realice una acción o función determinada. Estos programas pueden ser escritos en diferentes lenguajes de programación, acá tenemos dos ejemplos:



La programación en bloque para facilitar el acceso a la programación:

Es justo decir que programar, si bien está al alcance de todas y todos, en un principio puede resultar engorroso. Requiere ser muy meticulosa o meticuloso con la sintaxis del lenguaje que se usa, una coma mal o un espacio de más y el programa no andará. Además las líneas se ven todas parecidas por lo que no es fácil a primera vista identificar por ejemplo las partes del programa. Algunas instituciones educativas se pusieron a pensar maneras más amables de entrar en contacto con la programación, sus lógicas, conceptos y esencia sin los problemas o inconvenientes de los lenguajes formales, así surge la programación con bloques. En ella los diferentes comandos o líneas del programa tienen la forma de un bloque de color. Hay distintos tipos de programación de bloques pero la mayoría de los programas se verán algo parecido a esto:


En un principio la programación con bloques era sólo una manera de ensayar programas formales de una manera más intuitiva y accesible, sin embargo con el correr del tiempo se fueron inventando cada vez más plataformas que permiten que sea funcional.

Elementos de la programación con bloques:

Los programas hechos con bloques cuentan con los mismos elementos que la programación formal: condicionales, bucles, variables etc. Cada uno de ellos se representa con un bloque de color distinto, como veremos en el siguiente ejemplo. Es un programa hecho en Scratch que hará que el personaje principal de la animación o videojuego que se está haciendo (un gatito en este caso), camine y que cuando se presione la tecla espacio, maúlle.


Control: Los bloques de control y de eventos generalmente son naranjas, en otros entornos podrán tener otro color. Tienen esa forma redondeada arriba. Están hechos de esa manera para que no se les pueda encastrar ningún otro bloque arriba ya que siempre serán piezas que irán al comienzo de un programa o una porción de programa. Esto será así porque justamente inicializan el programa.

Bucle: Los bucles tienen forma de C y también suelen ser de color  naranja como los bloques de control ya que, al igual que estos, agrupan u organizan a otros comandos (los que están en su interior). Concretamente los bucles repiten la secuencia que tienen dentro. Si son bucles infinitos, la repiten infinitamente, si son bucles con parámetros las repiten un determinado número de veces. En el ejemplo se usa un bucle infinito, estos son muy comunes en los juegos ya que se necesita que el juego y sus dinámicas sigan andando a menos que la persona que juegue explícitamente abandone.

Condicionales: Los condicionales también tiene forma de C y también son naranja pues también agrupan u organizan a otros comandos (los que están en su interior). Concretamente los condicionales permiten que se lleve adelante la secuencia que tienen dentro sólo si se cumple con una condición, como su nombre indica. De modo que a la pieza en forma de C le encastraremos una en forma de rombo alargado que especificará la condición. Las condiciones deben ser algo que no se preste a ambigüedades y que la computadora pueda fácilmente verificar si se cumple o no. En el ejemplo la condición es que se esté tocando la tecla espacio.

Primitiva: Las primitivas suelen ser de color azul o violeta. Ellas son la forma más básica de comando. A diferencia de las piezas de control, de los condicionales y los bucles ellas no agrupan ni organizan a ninguna otra función.