Skip to content
Tecnología · 1o de Preparatoria

Ideas de aprendizaje activo

Funciones y Modularidad

Este tema exige que los estudiantes pasen de escribir código lineal a estructurar soluciones lógicas, por lo que el aprendizaje activo es esencial. Trabajar con funciones y modularidad en actividades colaborativas les permite experimentar primerohand cómo la organización del código mejora la claridad y reduce errores desde el inicio.

Aprendizajes Esperados SEPSEP EMS: Programación ModularSEP EMS: Abstracción de Funciones
25–50 minParejas → Toda la clase4 actividades

Actividad 01

Actividad Mantel30 min · Parejas

Refactorización en Parejas: Código a Funciones

Proporciona un programa lineal largo con repeticiones. Las parejas identifican patrones repetidos, convierten en funciones con parámetros y prueban cambios. Finalmente, comparan el código original con el modularizado midiendo líneas de código.

¿Cómo contribuye la modularidad a la creación de software a gran escala?

Consejo de FacilitaciónEn Refactorización en Parejas, pida a los estudiantes que primero identifiquen bloques repetidos en el código antes de convertirlos en funciones, usando colores para marcar las líneas idénticas.

Qué observarEntregue a cada estudiante una tarjeta con un problema simple (ej. calcular el área de un círculo). Pídales que escriban el pseudocódigo o código Python para una función que resuelva este problema, incluyendo parámetros y valor de retorno. Deben responder: ¿Qué parámetros necesita su función y qué valor devuelve?

ComprenderAnalizarEvaluarAutoconcienciaHabilidades de Relación
Generar Clase Completa

Actividad 02

Actividad Mantel45 min · Grupos pequeños

Desafío Grupal: Funciones Reutilizables

En grupos pequeños, diseña tres funciones reutilizables para un simulador de tienda (calcular descuento, validar stock, generar total). Integra en un programa principal y prueba con datos variados. Presenta ventajas observadas.

¿Qué ventajas ofrece el uso de funciones en la depuración de errores?

Consejo de FacilitaciónEn Desafío Grupal, asigne roles específicos: un estudiante diseña la función, otro crea casos de prueba y otro documenta el propósito, asegurando participación equitativa.

Qué observarPresente un fragmento de código sin funciones, que repite la misma lógica varias veces. Pregunte a los estudiantes: ¿Cómo podrían refactorizar este código usando una función? Pida a 2-3 estudiantes que expliquen sus ideas en voz alta, identificando qué partes se convertirían en la función y qué serían los parámetros.

ComprenderAnalizarEvaluarAutoconcienciaHabilidades de Relación
Generar Clase Completa

Actividad 03

Actividad Mantel25 min · Individual

Depuración Modular: Caza de Errores

Distribuye código con funciones intencionalmente erróneas. Individualmente, localiza y corrige bugs en funciones específicas, luego discute en clase cómo la modularidad aisló el problema.

¿De qué manera podemos diseñar funciones que sean verdaderamente reutilizables?

Consejo de FacilitaciónEn Depuración Modular, proporcione errores reales pero aislados en funciones individuales, para que los estudiantes practiquen trazando llamadas y retornos paso a paso.

Qué observarPlantee la siguiente pregunta para discusión en parejas: 'Si un programa grande tiene un error, ¿por qué es más fácil encontrarlo y corregirlo si el código está organizado en funciones pequeñas y bien definidas en lugar de un solo bloque largo?'. Pida a las parejas que compartan sus conclusiones con la clase.

ComprenderAnalizarEvaluarAutoconcienciaHabilidades de Relación
Generar Clase Completa

Actividad 04

Actividad Mantel50 min · Toda la clase

Clase Completa: Proyecto Escalable

La clase construye colectivamente un programa modular para procesar datos escolares, asignando funciones por equipo. Integra y ejecuta, destacando mantenimiento colaborativo.

¿Cómo contribuye la modularidad a la creación de software a gran escala?

Consejo de FacilitaciónEn Proyecto Escalable, limite el tiempo de diseño inicial para evitar que los estudiantes se pierdan en detalles prematuros y enfóquense en la estructura modular.

Qué observarEntregue a cada estudiante una tarjeta con un problema simple (ej. calcular el área de un círculo). Pídales que escriban el pseudocódigo o código Python para una función que resuelva este problema, incluyendo parámetros y valor de retorno. Deben responder: ¿Qué parámetros necesita su función y qué valor devuelve?

ComprenderAnalizarEvaluarAutoconcienciaHabilidades de Relación
Generar Clase Completa

Plantillas

Plantillas que acompañan estas actividades de Tecnología

Úsalas, edítalas, imprímelas o compártelas.

Algunas notas para enseñar esta unidad

Investigaciones en pedagogía de la programación muestran que los estudiantes aprenden mejor modularidad cuando ven el contraste entre código desorganizado y refactorizado. Evite enseñar funciones como un concepto abstracto; en su lugar, parta de problemas concretos que justifiquen su uso. La repetición de ejercicios similares en diferentes contextos fortalece la transferencia de conocimientos.

Los estudiantes demuestran comprensión al reutilizar funciones en contextos distintos, parametrizarlas correctamente y dividir problemas complejos en módulos manejables. Escucharlos explicar decisiones de diseño en parejas o grupos muestra que internalizaron el valor de la modularidad.


Cuidado con estas ideas erróneas

  • Durante Refactorización en Parejas, algunos estudiantes pueden pensar que las funciones solo sirven para copiar código idéntico sin cambios.

    Durante Refactorización en Parejas, invite a los estudiantes a modificar los parámetros de su función en una segunda versión, por ejemplo, cambiando el radio por diámetro en una función de área de círculo, para mostrar cómo un mismo bloque resuelve problemas distintos.

  • Durante Desafío Grupal, algunos argumentan que la modularidad complica el código y lo hace más difícil de entender.

    Durante Desafío Grupal, pida a los grupos que compartan cómo dividieron el problema original en funciones y qué pruebas realizaron en cada una, destacando cómo esto simplificó la comprensión y corrección de errores.

  • Durante Depuración Modular, los estudiantes pueden creer que depurar funciones es igual que en código lineal.

    Durante Depuración Modular, entregue a cada pequeño grupo un error en una función específica y pídales que expliquen cómo aislarían el problema, comparando el proceso con depurar un bloque largo de código.


Metodologías usadas en este resumen