Ir al contenido
Tecnología e Informática · 9o Grado · Algoritmos y Estructuras de Control Complejas · Periodo 1

Introducción a la Programación Basada en Eventos

Los estudiantes exploran cómo los programas pueden responder a interacciones del usuario (clics, teclas) y otros eventos, fundamental en interfaces gráficas.

Derechos Básicos de Aprendizaje (DBA)DBA Tecnologia e Informatica: Grado 9 - Pensamiento Computacional y Programacion ModularDBA Tecnologia e Informatica: Grado 9 - Interaccion Humano-Computadora

Acerca de este tema

La programación basada en eventos introduce a los estudiantes a cómo los programas responden a interacciones del usuario, como clics del mouse o presiones de teclas, y a otros sucesos del sistema. En noveno grado, según los Derechos Básicos de Aprendizaje (DBA) de Tecnología e Informática del MEN, los estudiantes identifican eventos en contextos cotidianos, como el encendido de una pantalla al tocarla, analizan su impacto en el flujo del programa y diseñan aplicaciones simples con bloques de código que reaccionan a estas acciones. Este enfoque fortalece el pensamiento computacional y la interacción humano-computadora.

Dentro de la unidad de Algoritmos y Estructuras de Control Complejas, este tema conecta la programación modular con interfaces gráficas reales, preparando a los estudiantes para aplicaciones prácticas como juegos o sitios web interactivos. Aprenden que los eventos interrumpen la ejecución secuencial, promoviendo un entendimiento de bucles condicionales y funciones callback, habilidades clave para el desarrollo de software moderno.

El aprendizaje activo beneficia este tema porque los estudiantes construyen y prueban programas en entornos visuales como Scratch o App Inventor, experimentando fallos y ajustes en tiempo real. Estas prácticas colaborativas convierten conceptos abstractos en experiencias tangibles, fomentando la depuración autónoma y la creatividad en el diseño interactivo.

Preguntas Clave

  1. Explicar qué es un evento en programación y dar ejemplos de la vida real.
  2. Analizar cómo un programa puede reaccionar a diferentes acciones del usuario.
  3. Diseñar un programa simple que utilice eventos para interactuar con el usuario.

Objetivos de Aprendizaje

  • Identificar y describir al menos tres tipos de eventos (ej. clic de ratón, pulsación de tecla, movimiento del ratón) en el contexto de una interfaz gráfica de usuario.
  • Analizar cómo un programa simple puede reaccionar de manera diferente a distintos eventos de entrada del usuario, explicando la secuencia de ejecución.
  • Diseñar y construir un programa interactivo básico utilizando un entorno visual (como Scratch o App Inventor) que responda a al menos dos tipos de eventos definidos por el usuario.
  • Explicar la relación entre una acción del usuario (el evento) y la respuesta del programa (la acción ejecutada) utilizando la terminología adecuada.

Antes de Empezar

Conceptos Básicos de Algoritmos

Por qué: Los estudiantes deben entender qué es un algoritmo y cómo se representa (diagramas de flujo, pseudocódigo) para poder comprender cómo un programa sigue instrucciones en respuesta a eventos.

Estructuras de Control Secuenciales y Repetitivas

Por qué: Es necesario que comprendan la ejecución paso a paso y los bucles para entender cómo los eventos interrumpen o modifican el flujo normal del programa.

Introducción a la Programación Visual (Scratch/App Inventor)

Por qué: La familiaridad con entornos de programación visual facilita la comprensión de la sintaxis de bloques para manejar eventos y la creación de prototipos rápidos.

Vocabulario Clave

EventoUna acción o suceso que ocurre en el sistema o en la interfaz de usuario, y que el programa puede detectar y a la cual puede responder.
Manejador de Eventos (o Listener)Una función o bloque de código diseñado específicamente para ser ejecutado cuando ocurre un evento particular.
Bucle de EventosEl mecanismo subyacente que espera continuamente la ocurrencia de eventos y los despacha a los manejadores de eventos correspondientes.
Interfaz Gráfica de Usuario (GUI)Un tipo de interfaz que permite a los usuarios interactuar con dispositivos electrónicos a través de indicadores gráficos e iconos visuales, en lugar de interfaces de línea de comandos.
CallbackUna función que se pasa como argumento a otra función, y que se espera que sea ejecutada en un momento posterior, típicamente cuando ocurre un evento.

Cuidado con estas ideas erróneas

Idea errónea comúnLos eventos solo ocurren por acciones del usuario, no por el sistema.

Qué enseñar en su lugar

Los eventos incluyen temporizadores o colisiones automáticas. Discusiones en parejas ayudan a listar ejemplos del sistema, como actualizaciones de pantalla, aclarando que los programas escuchan múltiples fuentes. Pruebas activas revelan estos en simulaciones reales.

Idea errónea comúnLos programas siempre ejecutan código de forma lineal, sin interrupciones.

Qué enseñar en su lugar

Los eventos alteran el flujo con manejadores. Actividades de codificación paso a paso muestran cómo un clic salta a una función específica. Colaborar en depuración grupal corrige esta idea al observar ejecución en vivo.

Idea errónea comúnCualquier acción del usuario genera un evento detectable.

Qué enseñar en su lugar

Solo eventos programados se capturan. Exploraciones guiadas donde fallan detecciones no definidas enseñan a registrar eventos explícitamente, fortaleciendo el diseño preciso mediante prueba y error colectiva.

Ideas de aprendizaje activo

Ver todas las actividades

Conexiones con el Mundo Real

  • Los desarrolladores de videojuegos utilizan la programación basada en eventos para que los personajes salten, disparen o se muevan en respuesta a las pulsaciones del jugador en el teclado o los clics del mando. Cada acción del jugador es un evento que desencadena una respuesta específica en el juego.
  • Los diseñadores de aplicaciones móviles crean interfaces donde tocar un botón (un evento de toque) abre una nueva pantalla, deslizar el dedo (un evento de deslizamiento) desplaza contenido, y mantener presionado un elemento (un evento de presión larga) muestra opciones adicionales, todo gestionado por eventos.
  • Los ingenieros de software que trabajan en sistemas de control industrial programan sistemas para reaccionar a eventos como el aumento de temperatura en un sensor (un evento de lectura de sensor) o la activación de un interruptor (un evento de entrada digital), activando alarmas o ajustando procesos.

Ideas de Evaluación

Boleto de Salida

Entregue a cada estudiante una tarjeta con una acción común (ej. 'hacer clic en un botón', 'presionar la barra espaciadora', 'mover el ratón'). Pida que escriban: 1) ¿Qué tipo de evento es? 2) ¿Qué podría hacer un programa en respuesta a este evento? 3) ¿En qué tipo de aplicación se vería esto?

Verificación Rápida

Muestre un diagrama de flujo simple de un programa que espera un evento. Pregunte a los estudiantes: '¿Qué sucede si el usuario hace clic en el botón A? ¿Qué sucede si hace clic en el botón B? ¿Qué sucede si no ocurre ningún evento?' Verifique las respuestas para asegurar la comprensión del flujo.

Pregunta para Discusión

Plantee la siguiente pregunta para discusión en grupos pequeños: 'Piensen en una aplicación que usan frecuentemente (ej. un reproductor de música, un editor de texto). Describan tres eventos diferentes que ocurren al usarla y cómo la aplicación responde a cada uno de ellos. ¿Qué pasaría si la aplicación no pudiera detectar estos eventos?'

Preguntas frecuentes

¿Qué es un evento en programación y ejemplos de la vida real?
Un evento es una acción o suceso que un programa detecta para ejecutar código específico, como un clic o tecla presionada. En la vida real, es similar a un interruptor que enciende luces al entrar a una habitación o un sensor que activa una alarma. En programación, herramientas como Scratch permiten bloques 'al clic' para responder, haciendo interfaces dinámicas y usables.
¿Cómo ayuda el aprendizaje activo a entender la programación basada en eventos?
El aprendizaje activo permite a los estudiantes crear programas interactivos desde cero, probando eventos en tiempo real y ajustando fallos inmediatos. En parejas o grupos, comparten creaciones y depuran colectivamente, lo que transforma ideas abstractas en experiencias concretas. Estas prácticas fomentan la experimentación, la colaboración y retención profunda, alineadas con los DBA del MEN.
¿Cómo analizar el flujo de un programa con eventos?
Analice el código identificando bloques de eventos y sus manejadores; trace cómo un clic salta la ejecución secuencial a una función. Use depuradores visuales para pausar y observar. Actividades prácticas muestran que múltiples eventos priorizados cambian el comportamiento, preparando para programación modular compleja.
¿Herramientas recomendadas para noveno grado en Colombia?
Scratch, App Inventor o Code.org son ideales por su interfaz gráfica y bloques drag-and-drop, accesibles sin sintaxis compleja. Cumplen DBA de Pensamiento Computacional, permitiendo diseños rápidos de eventos. Integre con Chromebooks escolares para colaboración en la nube, escalando a Python con eventos para grados superiores.