A.2 – Introducción a los lenguajes de bloques
Computación y Robótica – 1º ESO
Antes de empezar: ¿te acuerdas?
La sesión pasada entrenaste a tu lince en Scratch: le hiciste presentarse, moverse, avisar con un sonido y transformarse, encajando piezas de colores. Eso que hiciste tiene un nombre: programar con un lenguaje de bloques. Hoy vamos a entender bien qué es y cómo funciona.
1. ¿Qué es un lenguaje de programación por bloques?
Un lenguaje de bloques es una forma de programar en la que, en lugar de escribir código con el teclado (letras, símbolos, punto y coma…), arrastras y encajas piezas visuales que representan instrucciones.
Cada pieza es como una ficha de puzzle: tiene una forma concreta y solo encaja donde tiene sentido. Por ejemplo, una pieza de “mover 10 pasos” no encaja dentro de una pieza de “decir hola”, porque no tiene sentido ponerlas ahí.
Idea clave: en un lenguaje de bloques, la forma de las piezas te dice si tu programa está bien construido, antes incluso de ejecutarlo.
2. ¿Cómo funciona?
- Cada bloque representa una instrucción (mover, decir algo, esperar, repetir, cambiar de color…).
- Los bloques se encajan uno debajo de otro, formando una secuencia: así le dices al ordenador qué hacer y en qué orden.
- Normalmente empiezas con un bloque de evento (por ejemplo, “al pulsar la bandera verde”), que indica cuándo se pone en marcha el programa.
- Al ejecutar el programa, el ordenador va leyendo los bloques de arriba abajo, uno detrás de otro.
3. Elementos de un entorno de bloques
Cuando abriste Scratch, viste varias zonas. Son las mismas en la mayoría de lenguajes de bloques:
| Elemento | Qué es |
|---|---|
| Categorías de bloques | Grupos de piezas según su función: Movimiento, Apariencia, Sonido, Eventos, Control, Sensores, Operadores… |
| Área de bloques / script | Donde encajas las piezas para construir tu programa |
| Escenario / zona de trabajo | Donde se ve el resultado de tu programa en marcha |
| Personaje / objeto | El elemento que va a “obedecer” tus bloques (tu lince, un robot, un objeto en pantalla…) |
4. ¿Dónde se usan los lenguajes de bloques?
No es solo Scratch. Es una forma de programar que se usa en muchos entornos distintos:
- Scratch → animaciones, historias y juegos sencillos
- App Inventor → creación de aplicaciones para móvil
- MakeCode → programación de micro:bit y otras placas
- Blockly → motor de bloques que usan muchas otras herramientas
- Tinkercad Codeblocks → programación de circuitos y Arduino
Idea clave: aprender a pensar en bloques te sirve luego para programar robots, apps y placas como micro:bit, no solo para Scratch.
5. Ventajas e inconvenientes frente a un lenguaje textual
Ventajas:
- No puedes cometer errores de escritura (faltas de sintaxis), porque las piezas solo encajan si tiene sentido
- Es visual: ves de un vistazo la estructura del programa
- Es más rápido para empezar, sin tener que memorizar comandos exactos
Inconvenientes:
- Con programas grandes, puede haber muchas piezas y resultar difícil de organizar
- No se parece a cómo escriben código los programadores profesionales (que usan lenguajes textuales como Python, Java o C++)
- Algunas cosas muy concretas son más lentas de construir con bloques que escribiéndolas directamente
6. Vocabulario para memorizar
| Palabra | Significado |
|---|---|
| Bloque | Pieza visual que representa una instrucción |
| Categoría | Grupo de bloques según su función (Movimiento, Sonido…) |
| Script | Conjunto de bloques encajados que forman un programa |
| Evento | Bloque que indica cuándo empieza a ejecutarse un script (ej: al pulsar la bandera verde) |
| Encajar / ensamblar | Unir bloques para construir un programa |
| Secuencia | Orden en el que se ejecutan los bloques, de arriba abajo |
7. Para repasar (respóndelas de memoria antes del examen)
- ¿Qué es un lenguaje de bloques y en qué se diferencia de escribir código con el teclado?
- ¿Por qué las piezas de un lenguaje de bloques solo encajan de ciertas formas?
- Nombra tres entornos que usan lenguajes de bloques, además de Scratch.
- ¿Qué es un script?
- Di una ventaja y una desventaja de programar con bloques frente a programar escribiendo código.
Próxima sesión: parte práctica de A.2.
Ficha de actividad — A.2 El entrenamiento se pone serio
Computación y Robótica — 1º ESO
Antes de nada
Abre tu proyecto guardado de la sesión anterior (nombre_apellido_A1.sb3, o entra con tu cuenta si lo guardaste en la nube). Vas a seguir entrenando al mismo lince, no a empezar de cero.
Guarda tu proyecto al menos dos veces durante la actividad, no solo al final.
Qué vamos a hacer
La sesión pasada tu lince hacía una secuencia de 4 acciones, siempre en el mismo orden, siempre arrancando igual: al pulsar la bandera verde. Eso era un script.
Hoy tu lince va a aprender que un superhéroe de verdad no solo actúa de una forma. Va a tener un segundo script, que arranca con un evento distinto. Y vas a usar el vocabulario que acabas de aprender en los apuntes para explicar lo que has construido.
La misión: la segunda habilidad del lince
Al final de la sesión anterior, algunos ya cotilleasteis las categorías de Control, Sensores y Operadores y le disteis una quinta habilidad a vuestro lince. Hoy esa habilidad se convierte en algo serio y con reglas:
- Ve a la categoría Eventos y busca un bloque distinto a “al presionar la bandera verde” (por ejemplo: al presionar la tecla espacio, o al hacer clic sobre este personaje).
- Encaja ese bloque de evento solo, sin tocar tu script anterior: va a ser el inicio de un script nuevo e independiente.
- Debajo, añade entre 2 y 3 bloques de las categorías que quieras (Movimiento, Apariencia, Sonido…) para crear la “habilidad especial” de tu lince: un ataque, un salto, un grito de guerra, lo que tú decidas.
- Prueba tu programa: comprueba que el primer script (bandera verde) sigue funcionando igual que la sesión pasada, y que el segundo script (tu evento nuevo) se activa de forma independiente.
Checklist — marca cuando lo consigas
- He abierto mi proyecto anterior y el lince sigue haciendo sus 4 acciones de siempre
- He añadido un bloque de Eventos distinto a la bandera verde
- Debajo de ese bloque he encajado entre 2 y 3 bloques nuevos, formando un segundo script
- He probado los dos scripts por separado y funcionan de forma independiente
- Sé señalar, dentro de mi proyecto, dónde está una categoría, un script y un evento
- He guardado el proyecto
Antes de cerrar: relaciona la práctica con la teoría
Respóndelas por escrito donde te indique el profesor.
- Tu proyecto ahora tiene dos scripts. ¿Qué evento pone en marcha cada uno?
- Elige uno de los bloques nuevos que has usado hoy. ¿A qué categoría pertenece?
- En los apuntes viste que las piezas “solo encajan si tiene sentido”. Pon un ejemplo real de tu proyecto de hoy: un bloque que SÍ pudiste encajar en un sitio, y explica por qué encajaba ahí.
- ¿Cuál es la diferencia entre tener un solo script (como la sesión pasada) y tener dos scripts que arrancan con eventos distintos (como hoy)?
Si terminas antes que tus compañeros
Añade un tercer script con otro evento distinto a los dos que ya tienes. No hace falta que sea complicado: basta con que arranque de forma distinta y haga algo reconocible. Cuantos más eventos distintos tenga tu lince, más impredecible y “vivo” parece un superhéroe de verdad.
