Eduteka+

Descubriendo la Programación Orientada a Objetos con Python: ¡Construye tus primeros programas!

Ciencias Exactas y Naturales Aprendizaje Basado en Problemas 19 oct 2026 CC BY-SA 4.0

Creado por Omar C.

DOCX PDF

Cómo fue en el aula

Todavía nadie ha contado cómo le fue con este recurso.

Descripción

Este plan de clase está diseñado para que estudiantes de educación técnica y tecnológica se adentren en los fundamentos de la programación utilizando Python, enfocándose en el paradigma orientado a objetos. A través de un enfoque activo basado en problemas reales y simulados, los estudiantes aprenderán a construir programas que reflejen conceptos esenciales como clases, objetos, atributos y métodos. La programación orientada a objetos es una herramienta fundamental en el mundo tecnológico actual, utilizada en desarrollo de software, automatización, videojuegos y más. Aprender este paradigma no solo abre puertas a múltiples áreas laborales, sino que también desarrolla habilidades de pensamiento crítico, lógica y solución de problemas. Mediante actividades colaborativas y reflexivas, los estudiantes conectarán la teoría con aplicaciones concretas que pueden encontrar en su entorno laboral y personal, facilitando un aprendizaje significativo y duradero.

Objetivos de Aprendizaje

  • Analizar los conceptos básicos del paradigma de programación orientada a objetos en Python.
  • Diseñar y construir programas sencillos utilizando clases y objetos en Python.
  • Aplicar métodos y atributos para modelar problemas reales mediante programación orientada a objetos.
  • Evaluar y corregir programas orientados a objetos para mejorar su funcionamiento y estructura.

Recursos Necesarios

  • Computadoras o laptops con entorno de desarrollo Python instalado (IDLE, PyCharm, VSCode o similar) – 1 por estudiante o por pareja.
  • Proyector y computadora del docente para demostraciones.
  • Conexión a internet para acceso a recursos online y documentación oficial de Python.
  • Material impreso con resumen de conceptos clave de programación orientada a objetos (1 por estudiante).
  • Pizarra y marcadores para explicaciones y diagramas.

Requisitos Previos

  • Conocimientos básicos de programación en Python (variables, estructuras de control y funciones).
  • Familiaridad con el entorno de programación Python y ejecución de scripts simples.
  • Habilidades básicas en uso de computadora y software de programación.

Actividades

Sesión 1: Introducción y construcción inicial de programas orientados a objetos

Fase de Inicio

Tiempo estimado: 10 minutos

Propósito de la sesión:

Conectar con conocimientos previos de programación y presentar los conceptos básicos de la programación orientada a objetos, para comprender su importancia y aplicación práctica.

Activación de conocimientos previos:

  • Docente: Pregunta inicial en plenaria: "¿Qué entienden por un objeto en el contexto de la programación y cómo creen que se relaciona con el mundo real?"
  • Estudiantes: Responden con ejemplos simples, como un auto, una persona o una cuenta bancaria, y discuten brevemente.

Motivación y enganche:

  • Docente: Presenta un dato curioso: "Muchas aplicaciones y videojuegos que usan diariamente están construidos con programación orientada a objetos. Hoy ustedes darán sus primeros pasos para crear programas con esta técnica."
  • Estudiantes: Escuchan y generan expectativas sobre lo que aprenderán.

Contextualización:

  • Docente: Explica cómo modelar objetos del mundo real con código ayuda a resolver problemas técnicos y automatizar procesos en su entorno laboral y personal.
  • Estudiantes: Reflexionan sobre posibles usos y relevancia en su vida.

Fase de Desarrollo

Tiempo estimado: 45 minutos

Presentación del contenido:

El docente presenta de forma interactiva el concepto de clases y objetos en Python, usando ejemplos sencillos y preguntas para guiar la comprensión.

Actividad 1: Explorando clases y objetos

  • Objetivo: Analizar y comprender la estructura básica de una clase y objeto en Python.
  • Instrucciones:
    • Docente muestra en proyector un ejemplo básico de clase "Persona" con atributos nombre y edad.
    • Pregunta: "¿Qué características de una persona están representadas en esta clase?"
    • Los estudiantes en parejas discuten y responden.
    • Docente guía la construcción de un objeto a partir de la clase y muestra cómo acceder a sus atributos.
  • Organización: Parejas
  • Producto: Código simple de clase y objeto en Python creado en computador.
  • Tiempo: 20 minutos
  • Rol docente: Observa, formula preguntas para clarificar conceptos y apoya dudas técnicas.

Actividad 2: Diseño colaborativo de una clase

  • Objetivo: Diseñar una clase que modele un objeto real usando atributos y métodos.
  • Instrucciones:
    • Docente presenta un problema: "Diseñen una clase para modelar un 'Vehículo' con atributos como marca, modelo y método para mostrar información."
    • En grupos de 3-4 estudiantes, crean el diseño y luego codifican una versión inicial en Python.
    • Docente circula apoyando y consultando sobre la lógica y estructura.
  • Organización: Grupos de 3-4 estudiantes
  • Producto: Código funcional básico de clase Vehículo con atributos y método.
  • Tiempo: 25 minutos
  • Rol docente: Facilita recursos, responde preguntas y fomenta la colaboración.

Diferenciación

  • Estudiantes que terminan antes pueden agregar un método adicional que modifique algún atributo del objeto (por ejemplo, cambiar el color del vehículo).
  • Quienes necesiten más apoyo reciben ejemplos adicionales y acompañamiento directo para entender la sintaxis y estructura.

Transición

El docente conecta la creación de clases con la importancia de organizar código y prepara a los estudiantes para profundizar en la aplicación de métodos y atributos en la siguiente sesión.

Fase de Cierre

Tiempo estimado: 5 minutos

Síntesis:

  • Docente: Solicita a cada grupo compartir en una frase qué aprendieron sobre clases y objetos.
  • Estudiantes: Expresan ideas clave y destacan aspectos importantes del aprendizaje.

Reflexión metacognitiva:

  • ¿Cómo los conceptos de clase y objeto pueden ayudar a organizar mejor un programa?
  • ¿Qué dificultades tuvieron al crear su primera clase y cómo las superaron?

Retroalimentación:

El docente ofrece comentarios positivos sobre las ideas compartidas, corrige conceptos erróneos y destaca la importancia de la programación orientada a objetos.

Transferencia:

Se explica que en la próxima sesión ampliarán el uso de métodos y atributos para construir programas más completos.

Sesión 2: Profundizando en la Programación Orientada a Objetos y construcción de programas funcionales

Fase de Inicio

Tiempo estimado: 10 minutos

Propósito de la sesión:

Repasar los conceptos trabajados y preparar a los estudiantes para construir programas que usen métodos para manipular objetos.

Activación de conocimientos previos:

  • Docente: Pregunta: "¿Qué es un método en una clase y para qué sirve? Den un ejemplo con la clase Vehículo que crearon."
  • Estudiantes: Responden en plenaria o grupos pequeños, recordando la sesión anterior.

Motivación y enganche:

  • Docente: Muestra un pequeño programa que crea varios objetos y los manipula usando métodos, resaltando cómo facilita la programación.
  • Estudiantes: Observan y comentan la utilidad del paradigma orientado a objetos.

Contextualización:

  • Docente: Enfatiza que dominar estos conceptos les permitirá diseñar programas para automatizar tareas y resolver problemas técnicos complejos.
  • Estudiantes: Reflexionan sobre aplicaciones prácticas posibles.

Fase de Desarrollo

Tiempo estimado: 45 minutos

Presentación del contenido:

El docente introduce el uso de métodos con parámetros, el método constructor __init__ y la encapsulación básica, apoyándose en ejemplos claros y preguntas para fomentar el pensamiento crítico.

Actividad 1: Construyendo métodos para manipular objetos

  • Objetivo: Aplicar métodos para modificar atributos de objetos y mostrar información.
  • Instrucciones:
    • Docente explica y muestra ejemplo de método que cambia un atributo (p. ej. actualizar modelo de vehículo).
    • Los estudiantes individualmente modifican el código de su clase Vehículo para incluir al menos dos métodos: uno para actualizar atributos y otro para mostrar datos.
    • Prueban su código creando objetos y llamando a los métodos.
  • Organización: Individual
  • Producto: Programa funcional con métodos que manipulan objetos.
  • Tiempo: 25 minutos
  • Rol docente: Supervisa, aclara dudas, plantea preguntas para que verifiquen el funcionamiento correcto.

Actividad 2: Resolución de problema real con programación orientada a objetos

  • Objetivo: Diseñar y construir un programa completo que utilice el paradigma orientado a objetos para resolver un problema planteado.
  • Instrucciones:
    • Se presenta un problema: "Crear un programa que gestione una biblioteca sencilla, con clase Libro que tenga atributos título, autor y método para mostrar información."
    • En parejas, diseñan la clase, crean objetos y métodos para agregar libros, mostrar la lista y actualizar información.
    • Docente apoya con preguntas: "¿Cómo organizan los datos? ¿Qué métodos necesitan para hacer el programa funcional?"
  • Organización: Parejas
  • Producto: Código Python que simule gestión básica de libros con objetos.
  • Tiempo: 20 minutos
  • Rol docente: Facilita, plantea preguntas de reflexión y evalúa el producto parcial.

Diferenciación

  • Para estudiantes adelantados: añadir funcionalidad para eliminar libros o búsqueda por título.
  • Para estudiantes con dificultades: simplificar el problema, enfocándose en crear y mostrar objetos sin métodos complejos.

Transición

El docente vincula el trabajo realizado con la importancia de depurar y evaluar programas para mejorar su funcionamiento, preparando el cierre.

Fase de Cierre

Tiempo estimado: 5 minutos

Síntesis:

  • Docente: Solicita a cada pareja escribir en una tarjeta tres aprendizajes clave sobre programación orientada a objetos.
  • Estudiantes: Comparten sus tarjetas en plenaria, se crea un mural o listado en pizarra.

Reflexión metacognitiva:

  • ¿Cómo la programación orientada a objetos facilita la organización y reutilización del código?
  • ¿Qué retos enfrentaron al implementar métodos y cómo los solucionaron?
  • ¿De qué forma pueden aplicar lo aprendido en otros proyectos o contextos?

Retroalimentación:

El docente entrega retroalimentación inmediata resaltando fortalezas y áreas de mejora, motivando la aplicación continua del paradigma.

Transferencia:

Invita a los estudiantes a pensar en proyectos personales o laborales donde puedan aplicar la programación orientada a objetos para automatizar tareas.

Tarea o reto:

Crear un programa orientado a objetos que modele un sistema simple de gestión de inventario, usando clases, objetos, atributos y métodos, para presentar en la siguiente clase.

Evaluación

Tipo de evaluación: Formativa durante el desarrollo (observación y retroalimentación) y sumativa al cierre de la segunda sesión con la presentación del programa desarrollado.

Criterios de evaluación:

  • Identifica y explica correctamente los conceptos de clase y objeto en Python (Objetivo 1).
  • Diseña y construye programas funcionales que usan clases, objetos, atributos y métodos (Objetivos 2 y 3).
  • Demuestra capacidad para evaluar y corregir errores en programas orientados a objetos (Objetivo 4).

Instrumentos sugeridos:

  • Lista de cotejo para verificar la correcta implementación de clases, objetos y métodos.
  • Rúbrica para evaluar el programa final en cuanto a funcionalidad, estructura y claridad.
  • Observación directa durante actividades prácticas y participación en discusiones.
  • Autoevaluación y coevaluación mediante preguntas guía al final de cada sesión.

Evidencias de aprendizaje:

  • Código fuente de programas desarrollados (clases Vehículo y Biblioteca).
  • Respuestas y reflexiones en actividades orales y escritas.
  • Participación activa en actividades colaborativas y resolución de problemas.

Recomendaciones de IA para el Plan

TIC + IA Integrar TIC + IA

Integración tecnológica e Inteligencia Artificial en la Fase de Inicio

  • Sustitución: Uso de una presentación digital en Google Slides o PowerPoint para mostrar los conceptos básicos y preguntas iniciales. Esto reemplaza el uso de pizarras tradicionales y permite incluir imágenes y ejemplos visuales que facilitan la comprensión. Los estudiantes pueden acceder a la presentación desde sus dispositivos para seguir el contenido.
  • Aumento: Uso de una herramienta de encuestas en línea como Mentimeter o Kahoot para realizar la pregunta inicial sobre qué es un objeto en programación. Esto permite recibir respuestas anónimas y generar un ambiente participativo donde todos los estudiantes pueden aportar ideas, incluso los más tímidos. Además, el docente puede mostrar resultados en tiempo real para fomentar la discusión.

Implementación: En el inicio, el docente proyecta la presentación con la pregunta inicial y abre la encuesta para que los estudiantes respondan con sus dispositivos móviles o computadoras. Luego, se discuten las respuestas en plenaria.

Contribución a objetivos: Estas herramientas ayudan a activar conocimientos previos y motivar a los estudiantes, facilitando la conexión entre conceptos teóricos y ejemplos de su entorno, preparando el terreno para el aprendizaje de programación orientada a objetos.

Nivel SAMR: Sustitución (presentación digital) y Aumento (encuesta interactiva en línea).

Integración tecnológica e Inteligencia Artificial en la Fase de Desarrollo

  • Modificación: Uso de un entorno de programación en línea como Replit o Trinket donde los estudiantes pueden escribir, ejecutar y compartir código Python en tiempo real sin necesidad de instalar software. Estas plataformas suelen incluir autocompletado y sugerencias básicas que apoyan el aprendizaje.
  • Redefinición: Incorporación de un asistente de programación basado en IA, como GitHub Copilot (disponible en algunos entornos) o ChatGPT integrado, para que los estudiantes generen ejemplos de clases y objetos, reciban retroalimentación instantánea sobre errores de sintaxis y mejores prácticas. Esto permite explorar conceptos complejos y corregir errores de manera autónoma, potenciando la construcción de código orientado a objetos.

Implementación: Durante la actividad de construcción del código, el docente guía a los estudiantes para usar Replit, explicando cómo crear clases y objetos. Para quienes tengan acceso, se muestra cómo hacer preguntas al asistente de IA sobre dudas de sintaxis o lógica, fomentando la experimentación y el aprendizaje autónomo.

Contribución a objetivos: Estas tecnologías facilitan la comprensión práctica del paradigma orientado a objetos al permitir experimentar con código real de manera accesible y con soporte inteligente, promoviendo la construcción activa de programas.

Nivel SAMR: Modificación (entorno en línea colaborativo) y Redefinición (asistente de programación IA).

Integración tecnológica e Inteligencia Artificial en la Fase de Cierre

  • Aumento: Uso de foros en línea o plataformas como Google Classroom para que los estudiantes compartan su código y reflexiones sobre lo aprendido, y reciban retroalimentación del docente y compañeros. Esto mejora la comunicación y permite extender el aprendizaje fuera del aula.
  • Redefinición: Uso de herramientas de análisis de código con IA (por ejemplo, DeepCode o extensiones de Visual Studio Code con análisis inteligente) para que los estudiantes reciban recomendaciones automáticas sobre calidad, estilo y posibles mejoras en sus programas orientados a objetos, fomentando la autoevaluación y el aprendizaje profundo.

Implementación: Después de la sesión, los estudiantes suben su código a la plataforma designada y participan en la discusión. El docente muestra cómo usar la herramienta de análisis IA para mejorar el código, lo que motiva a los estudiantes a reflexionar críticamente sobre su trabajo.

Contribución a objetivos: Estas herramientas promueven la reflexión y mejora continua, ayudando a consolidar el aprendizaje de programación orientada a objetos y habilidades de colaboración y autoevaluación.

Nivel SAMR: Aumento (foro de discusión) y Redefinición (análisis de código con IA).

Crea tu propio plan de clase con IA

100 créditos gratuitos cada mes

Comenzar gratis