Guía didáctica
Descripción do ODE
Título: ODE2 : Fundamentos de programación en Python
Temática: Iniciación á programación en Python
Materia: Tecnoloxías Intelixentes
Metodoloxía: Aprendizaxe basado na experimentación
Curso: 1º Curso de Bacharelato
Sesións:14 sesións presenciais
Ferramenta: exelearning
Autoría: Eva María Brañas Rodríguez
Descripción: Esta proposta ten como obxectivo principal acercar ó alumnado a programación, dun xeito intuitivo e práctico. Partindo das funcións de entrada/saída, iranse realizando actividades que irán introducindo as estruturas básicas ( condicionais e bucles) e os conceptos asociados á programación por obxectos (clases, métodos, obxectos) . Realizarase un acercamento ó concepto e uso de librerías.
Producto final: O alumnado elaborará, individualmente ou en pequeno grupo, unha serie de programas en orde crecente de complexidade. O tempo que deberán adicar está incluído nas horas presenciais. Nalgún caso podería engadirse 1 ou 2 horas de traballo en casa para terminar ou probar algún programa. Elaborará unha carpeta coas solucións a todas as actividades do ODE.
Relación/Complementación con outros ODE: Aínda que é un ODE completo e ten sentido e funcionalidade en sí mesmo, ten relación directa e compleméntase con outros 3 ODES da miña autoría: ODE1: Como pensan as máquinas?; ODE3: Ferramentas para IA: Cadernos de programación e librerías; ODE4: O meu primeiro proxecto de IA
O recurso
Este recurso está pensado para que o alumnado aprenda a programar en Python, dunha maneira práctica. Mediante unha combinación de bases teóricas e pequenos programas individuais ou grupais relacionados, que van aumentando en nivel de complexidade, introduce todos os conceptos clave relacionados coa programación en Python.
Aínda que é un ODE completo e ten sentido e funcionalidade en sí mesmo, ten relación directa e se complementa con outros 3 ODES da miña autoría:
- ODE1: Como pensan as máquinas?
- ODE3: Ferramentas para IA: Cadernos de programación e librerías
- ODE4: O meu primeiro proxecto de IA
O produto final consiste
- na elaboración dunha carpeta cos programas solución de todas as actividades propostas , individualmente ou en pequeno grupo, donde o alumnado deberá poñer en xogo todos os coñecementos e habilidades adquiridas.
Distribución dos contidos
O ODE divídese en 2 bloques de contidos , comezando cunha páxina de introdución ó contido do OD Algoritmia e Python...por que?
BLOQUE 1: Como pensan as máquinas?
Onde se traballará a algoritmia:
- Que é programar?
- Pasos:
- analizar e entender o problema que queremos resolver
- definir ben cales son os requirimentos do problema (entradas, saídas, procesos, etc.)
- finalmente deseñar unha solución para o problema.
- Pasos:
- Que é un algoritmo?
- Diagramas de fluxo
- Tipos de estruturas algorítmicas: Secuenciais, Condicionais ,Repetitivas
BLOQUE 2: Un chisco de Python
Onde se traballará:
- Funcións de entrada e saída: print() e input()
- Estruturas condicionais: if, if-else, if-elif-else
- Estruturas repetitivas: for, while
- Variables en Python:int (enteiros), float (decimais), str (cadeas de texto), bool (booleanos), list (listas), tuple (tuplas),dict (diccionarios) e set (conxuntos)
- Funcións
- Clases, Obxectos e Métodos
- Librerías
Contidos prácticos
Toda a información vén acompañada de exemplos prácticos, actividades e tarefas, para facilitar a comprensión por todo o alumnado.
Os exemplos, actividades, etc... están pensados para que poidan completarse individualmente ou en grupo no tempo de clase, tras as correspondentes explicacións teóricas. Están detallados e con retroalimentación de resolución.
Incúense autoavaliacións de cada sección para que o alumnado comprobe o seu avance.
Outros aspectos
Ademais, ofrécese unha sección inicial Algoritmia e Python...por que?, destinada a fomentar a autorregulación da aprendizaxe por parte do alumnado, na que se detalla que se espera que aprendan, como se estrutura a aprendizaxe.
O recurso está deseñado para utilizarse cunha metodoloxía ABE, que pode complementarse perfectamente con outras técnicas de aprendizaxe cooperativa. Con este tipo de técnicas favoreceremos, dunha maneira estruturada, a interacción do alumnado coa súa propia aprendizaxe e coa do resto do grupo clase.
Despós de realizar este ODE o alumnado adquirirá unha base de programación en Python, que lle aportará coñecementos e destrezas usables e trasladables tanto á súa vida cotiá, coma ó seu futuro académico e profesional, xa que a programación nos acompañará en todos esos ámbitos.
Obxectivos didácticos
Obxectivo do ODE
OBJ4. Desenvolver solucións prácticas que inclúan o razoamento algorítmico e que incorporen alternativas eficaces, novos produtos e tecnoloxías intelixentes aplicando estratexias de aprendizaxe baseadas na programación para un modelizado e resolución autónoma e eficiente de
problemas reais.
- Comprender o concepto de algoritmos como base do pensamento das máquinas.
- Analizar os pasos para programar solucións a problemas.
- Definir e identificar os tipos de estruturas algorítmicas: secuenciais, condicionais e repetitivas.
- Identificar e interpretar diagramas de fluxo como representacións gráficas de algoritmos.
- Aprender a usar funcións de entrada e saída: print() e input().
- Traballar coas estruturas condicionais: if, if-else, if-elif-else.
- Implementar estruturas repetitivas: for, while.
- Entender as variables de Python e os seus tipos: int, float, str, bool, etc.
- Explorar e aplicar funcións para modularidade e eficiencia.
- Dominar conceptos clave da programación orientada a obxectos: clases, obxectos e métodos.
- Utilizar librerías para ampliar as capacidades de Python.
- Realizar actividades prácticas con exemplos reais como aplicación directa da aprendizaxe
Contidos do recurso
Contidos curriculares da materia Tecnoloxías Intelixentes traballados neste ODE:(que establece a ORDE do 9 de agosto de 2023 pola que se amplía a relación de materias optativas do bacharelato)
- Os fundamentos de programación en Python.
- Os algoritmos para resolver problemas.
Contidos desenrolados neste ODE
BLOQUE 1: Como pensan as máquinas?
Onde se traballará a algoritmia:
- Que é programar?
- Pasos:
- analizar e entender o problema que queremos resolver
- definir ben cales son os requirimentos do problema (entradas, saídas, procesos, etc.)
- finalmente deseñar unha solución para o problema.
- Pasos:
- Que é un algoritmo?
- Diagramas de fluxo
- Tipos de estruturas algorítmicas: Secuenciais, Condicionais ,Repetitivas
BLOQUE 2: Un chisco de Python
Onde se traballará:
- Funcións de entrada e saída: print() e input()
- Estruturas condicionais: if, if-else, if-elif-else
- Estruturas repetitivas: for, while
- Variables en Python:int (enteiros), float (decimais), str (cadeas de texto), bool (booleanos), list (listas), tuple (tuplas),dict (diccionarios) e set (conxuntos)
- Funcións
- Clases, Obxectos e Métodos
- Librerías
Metodoloxía , agrupamentos e temporalización
Metodoloxía
O recurso está deseñado para utilizarse cunha metodoloxía ABE, que pode complementarse perfectamente con outras técnicas de aprendizaxe cooperativa. Con este tipo de técnicas favoreceremos, dunha maneira estruturada, a interacción do alumnado coa súa propia aprendizaxe e coa do resto do grupo clase.
Agrupamentos
Cada tarefa , actividade, cuestionario a realizar indica o agrupamento aconsellado para realizalo.
Traballarán combinando actividades individuais e grupais:
- Terán momentos de traballo autónomo, como reflexións na súa carpeta , e cuestionarios
- Análise de problemas a resolver con programas en gran grupo
- Experimentación ou xeneración de programas en pequeno grupo
Temporalización
- En cada tarefa, actividade, cuestionario indícase a temporalización aconsellada para realizalo.
- As actividades que deberán realizar terán unha duración de entre 0.25 e 2.5 sesións dependendo da complexidade
- No apartado de secuenciación competencial de esta guía didáctica, detállase a temporalización de cada sección do ODE
Secuenciación competencial
| Bloque | Contidos | Competencias a desenrolar | Actividades asociadas | Recursos necesarios | Temporalización | Criterios de avaliación |
|---|---|---|---|---|---|---|
| BLOQUE 1: Como pensan as máquinas? | Que é programar? | Comprensión dos principios básicos da programación | Análise de problemas e definición dos requirimentos para solucións | Equipo informático con conexión a internet | 0.25 sesións | Capacidade para analizar e entender o problema correctamente. |
| Que é un algoritmo? | Coñecemento sobre algoritmos e a súa estrutura | Deseño guiado dun algoritmo para solucionar un problema específico | Equipo informático e software de diagramas de fluxo | 0.25 sesións | Correcto deseño e organización dun algoritmo. | |
| Diagramas de fluxo | Representación gráfica de algoritmos | Exercicio práctico para crear diagramas de fluxo | Ferramenta de diagramación, Equipo informático con conexión a internet | 0.5 sesións | Claridade e precisión nos diagramas creados. | |
| Estruturas algorítmicas | Secuenciais, condicionais e repetitivas | Actividade práctica de creación de algoritmos con diferentes tipos de estruturas | Ferramenta de diagramación, Equipo informático con conexión a internet | 0.5 sesións | Capacidade para aplicar correctamente as estruturas algorítmicas | |
| BLOQUE 2: Un chisco de Python | Funcións de entrada e saída | Uso práctico de print() e input() | Resolución de exercicios sinxelos de entrada e saída | Equipo informático con editor de Python | 1 sesión | Participación activa e uso correcto das funcións. |
| Estruturas condicionais | If, if-else, if-elif-else | Creación de programas que usen condicións para a toma de decisións | Equipo informático con editor de Python | 1.5 sesións | Correcta implementación e comprensión das condicións e aniñamentos. | |
| Estruturas repetitivas | For e while | Exercicio práctico con bucles para iterar datos | Equipo informático con editor de Python | 2 sesións | Capacidade para usar bucles eficazmente. | |
| Variables en Python | Tipos de datos: int, float, str, etc. | Actividades para entender e manipular variables | Equipo informático con editor de Python | 1 sesión | Correcto uso e comprensión dos tipos de datos. | |
| Funcións | Definición e uso de funcións | Creación de funcións personalizadas para resolver problemas | Equipo informático con editor de Python | 2 sesións | Capacidade para deseñar e implementar funcións correctamente. | |
| Clases, obxectos e métodos | Fundamentos da programación orientada a obxectos | Exercicio práctico de creación e uso de clases e obxectos | Equipo informático con editor de Python | 2.5 sesións | Comprensión e implementación correcta de POO. | |
| Librerías | Uso de librerías en Python | Actividades para explorar e utilizar librerías clave como math, random | Equipo informático, documentación e exemplos das librerías | 2.5 sesións | Correcta utilización das librerías e aplicación en exemplos prácticos. |
Avaliación e cualificación
Criterios de avaliación da materia Tecnoloxías Intelixentes traballados asociados a este ODE:(que establece a ORDE do 9 de agosto de 2023 pola que se amplía a relación de materias optativas do bacharelato)
- CE1.1. Comprender os fundamentos da programación na linguaxe Python.
- CE1.2 Utilizar bibliotecas e ferramentas de aprendizaxe automática para construír modelos de intelixencia artificial.
- CE1.3. Demostrar habilidades en programación para a intelixencia artificial, utilizando linguaxes de programación e ferramentas de desenvolvemento.
Criterios de avaliación deste ODE
O proceso de avaliación incluirá...
Durante as actividades, o alumnado irá organizando unha carpeta coas resolucións das prácticas e actividades propostas . Este será o produto finail a entregar.
- Autoavaliación: O alumnado poderá comprobar o seu avance cunhas actividades de autoavaliación de cada sección e terá acceso á rúbrica que usará o profesorado , isto axudaralle a comprobar se está alcanzando os obxectivos
- Avaliación do profesorado:
- Durante o proceso: avaliará o progreso mediante a rúbrica para a carpeta de programas solución, e realizará a retroalimentación
- Ó finalizar cada sección cualificará a solución ás actividades e programas 100%
| Bloque | Actividade | Instrumento de avaliación | Quen avalía | Momento da avaliación | Peso (%) |
|---|---|---|---|---|---|
| BLOQUE 1: Como pensan as máquinas? | Análise de problemas e definición dos requirimentos |
Actividade de autoavaliación con retroalimentación Rúbrica aplicada ás solucións organizadas polo alumnado |
Alumno/a (autoavaliación) Profesorado (heteroavaliación) |
Ao finalizar a sección |
5% |
| Deseño de algoritmos e diagramas de fluxo |
Actividade de autoavaliación con retroalimentación Rúbrica aplicada ás solucións organizadas polo alumnado |
Alumno/a (autoavaliación) Profesorado (heteroavaliación) |
Ao finalizar a sección |
5% | |
| Uso de estruturas algorítmicas (secuenciais, condicionais, repetitivas) |
Actividade de autoavaliación con retroalimentación Rúbrica aplicada ás solucións organizadas polo alumnado |
Alumno/a (autoavaliación) Profesorado (heteroavaliación) |
Ao finalizar a sección |
10% | |
| BLOQUE 2: Un chisco de Python | Estruturas condicionais (if, if-else, if-elif-else) |
Actividade de autoavaliación con retroalimentación Rúbrica aplicada ás solucións organizadas polo alumnado |
Alumno/a (autoavaliación) Profesorado (heteroavaliación) |
Ao finalizar a sección |
10% |
| Estruturas repetitivas (for, while) |
Actividade de autoavaliación con retroalimentación Rúbrica aplicada ás solucións organizadas polo alumnado |
Alumno/a (autoavaliación) Profesorado (heteroavaliación) |
Ao finalizar a sección |
10% | |
| Creación e implementación de funcións |
Actividade de autoavaliación con retroalimentación Rúbrica aplicada ás solucións organizadas polo alumnado |
Alumno/a (autoavaliación) Profesorado (heteroavaliación) |
Ao finalizar a sección |
15% | |
| Clases, obxectos e métodos (POO) |
Actividade de autoavaliación con retroalimentación Rúbrica aplicada ás solucións organizadas polo alumnado |
Alumno/a (autoavaliación) Profesorado (heteroavaliación) |
Ao finalizar a sección |
20% | |
| Uso de librerías en Python |
Actividade de autoavaliación con retroalimentación Rúbrica aplicada ás solucións organizadas polo alumnado |
Alumno/a (autoavaliación) Profesorado (heteroavaliación) |
Ao finalizar a sección |
25% |
Desafíos do S. XXI e ODS
Os catro piares da educación propostos pola UNESCO, aprender a coñecer, a facer, a ser e a vivir xuntos, concrétanse nos principais desafíos do século XXI, dos cales traballaremos os seguintes neste ODE:
- Aprender ao longo da vida: Trabállase fomentando unha aprendizaxe activa e autónoma, permitindo ao alumnado adquirir habilidades en algoritmia e Python que serán útiles en contextos futuros tanto académicos como profesionais. O uso de autoavaliacións con retroalimentación promove a reflexión e o desenvolvemento continuo.
- Aceptación e manexo da incerteza: Os exercicios prácticos e resolucións de problemas propostos permiten ao alumnado enfrontarse a situacións onde deben analizar, probar solucións alternativas e aceptar erros como parte do proceso de aprendizaxe, reforzando a capacidade de adaptación e pensamento flexible.
- Coñecemento como motor do desenvolvemento: A unidade promove a adquisición de competencias tecnolóxicas que empoderan ao alumnado para aplicar o coñecemento adquirido no deseño e implementación de solucións a problemas reais, especialmente no ámbito da programación e a creación de algoritmos.
- Análise crítica e responsable das tecnoloxías: Ao introducir Python e as súas posibilidades, o alumnado reflexiona sobre o impacto e o uso ético da tecnoloxía, así como sobre a importancia de ser crítico coas ferramentas que emprega.
Este traballo toca varios Obxectivos de Desenvolvemento Sostible (ODS). Aquí están os máis relevantes:
- ODS 4: Educación de calidade -Promóvese mediante o desenvolvemento de competencias en programación (algoritmia e Python), fomentando unha aprendizaxe inclusiva e equitativa.
- ODS 5: Igualdade de xénero -Foméntase a igualdade mediante a sensibilización da inclusión e a diversidade nos exemplos e casos prácticos que se propoñen durante a unidade. Tamén se anima á participación igualitaria de todo o alumnado nos proxectos e actividades colaborativas.
- ODS 9: Industria, innovación e infraestruturas -A aprendizaxe de Python e a comprensión da algoritmia subministra ferramentas clave para o desenvolvemento tecnolóxico e a innovación.
- ODS 12: Produción e consumo responsables -No uso e implementación de proxectos de programación, trabállanse prácticas que destacan a importancia de optimizar recursos tecnolóxicos e empregalos de xeito ético e responsable, fomentando o consumo sostible.
- ODS 17: Alianzas para acadar os obxectivos -Favorece o traballo en equipo e a colaboración entre o alumnado nas actividades prácticas e proxectos de solución de problemas, reflexionando así sobre a importancia da cooperación para superar desafíos globais..
DUA e Atención á diversidade
Este ODE deseñouse procurando que sexa o máis accesible posible, e cumprir cos principios e pautas do Deseño Universal para a Aprendizaxe.
Incluío a continuación os principais indicadores do DUA que apliquei aparte da inclusión dunha barra de accesibilidade:
Redes afectivas. Implico ao alumnado na aprendizaxe
-
Actividades contextualizadas á vida real do alumnado:Bloque 1. Contido: Análise de problemas e definición dos requirimentos. Actividade: Os problemas que o alumnado resolve están relacionados con situacións reais, como optimizar procesos ou analizar datos, fomentando conexións prácticas co mundo que os rodea.
-
Actividades onde o alumnado pode participar no seu deseño e establecemento de obxectivos:Bloque 2. Contido: Creación e implementación de funcións. Actividade: Durante o proceso de deseño de funcións personalizadas, o alumnado decide as tarefas específicas a resolver e establece os obxectivos da solución.
-
Diferentes opcións para elixir recursos, actividades, agrupamentos:Bloque 2. Contido: Uso de librerías en Python. Actividade: O alumnado escolle entre varias librerías como matplotlib, pandas ou random, dependendo das necesidades das actividades.
-
Fomento da reflexión e a avaliación por parte do alumnado:Ambos os bloques. Contido: Autoavaliación con retroalimentación. Actividade: Carpeta permite ao alumnado reflexionar sobre os conceptos adquiridos e avaliar o progreso feito en cada actividade.
-
Actividades con retroalimentación sobre acertos e erros, así como suxestións de mellora:Ambos os bloques. Contido: Estruturas repetitivas e condicionais. Actividade: Cada programa creado recibe retroalimentación do profesorado, que destaca os puntos fortes e ofrece recomendacións claras para mellorar.
-
Propicio un clima favorable en clase:Ambos os bloques. Contido: Actividades grupais como as resolucións colaborativas de problemas de programación. Actividade: Traballos en equipo e discusións abertas fomentan unha atmósfera de confianza e apoio entre os estudantes.
.
Redes de coñecemento. Presento a información en varios formatos.
- Prevíronse diferentes formas para mostrar a información ao alumnado: A información preséntase mediante texto explicativo (como as instrucións e teoría das sesións), exemplos prácticos resoltos (ex.: aplicación de estruturas condicionais e bucles), gráficos (diagramas de fluxo para algoritmos) e código real en Python. O alumnado tamén explora recursos como librerías de Python que ofrecen visualizacións atractivas.
- A información está organizada, deixando claras as partes máis importantes: Cada bloque está estruturado coas súas actividades e obxectivos específicos, como a aprendizaxe das estruturas algorítmicas ou o uso de funcións en Python. A organización reflicte unha progresión lóxica, que facilita a comprensión e evita sobrecargar ao alumnado.
- As actividades están secuenciadas en orde de dificultade crecente: A unidade comeza con conceptos básicos como algoritmos e diagramas de fluxo, pasando por estruturas algorítmicas e tipos de datos en Python, ata chegar a tarefas avanzadas como a programación orientada a obxectos (POO) e o uso de librerías. Este enfoque progresivo axuda ao alumnado a consolidar os puntos teóricos antes de aplicar os conceptos en exercicios máis complexos.
Redes estratéxicas. Proporciónanse formas diferentes para aprender e expresar o aprendido.
-
Ofrezo ao alumnado diferentes formas de mostrar o aprendido:O alumnado pode presentar o seu traballo mediante portafolios, onde recollen as solucións ás actividades realizadas, resultados das simulacións realizadas en Python ou proxectos estruturados como o desenvolvemento de funcións ou modelos en programación orientada a obxectos.
-
Dou estratexias para que o alumnado autorregule a súa aprendizaxe:Utilízanse actividades de autoavaliación con retroalimentación incluídas en cada sesión, que permiten ao alumnado reflexionar sobre os acertos e áreas a mellorar. O portafolio é empregado como ferramenta para revisar o progreso e organizar o aprendizaxe.
-
Combino actividades individuais con agrupadas que favorezan o aprendizaxe entre iguais:Bloque 1 e Bloque 2. Actividade: Discusións grupais sobre problemas reais e ficticios (traballo colaborativo en equipo) e proxectos individuais ou de pequeno grupo como os programas con estruturas repetitivas ou o uso de librerías. Estas dinámicas fomentan o intercambio de ideas e aprendizaxe mutua.
-
Indico os tempos aproximados de execución das tarefas e do ODE, que poden flexibilizarse:Cada actividade ten unha temporalización específica que guía ao alumnado (ex.: 15 min para exercicios básicos ou actividades grupais e ata 50 min sesións para proxectos avanzados como o uso de librerías e a programación orientada a obxectos). A flexibilidade permite adaptarse ás necesidades de cada grupo.
Os contidos curriculares que se van desenvolver no ODE están en relación directa coa materia Tecnoloxías Intelixentes cuxos obxectivos e bloques de contido establece a ORDE do 9 de agosto de 2023 pola que se amplía a relación de materias optativas do bacharelato e establécese o seu currículo na Comunidade Autónoma de Galicia.
É unha técnica que require a participación integral do alumnado e permítelle adquirir e verificar os coñecementos adquiridos, desenvolver unha mentalidade científica e investigadora e poñer en evidencia a noción de causa e efecto das súas accións.
Recursos e coñecementos previos necesarios
Recursos necesarios
Para levar a cabo a situación de aprendizaxe desenrolada neste ODE, o alumnado debe dispoñer de:
- Equipo informático con acceso a internet e software individual ou por parella
- Software de aplicación Thonny: https://thonny.org/
Coñecementos previos
Para levar a cabo a situación de aprendizaxe desenrolada neste ODE![]()
- O alumnado debe ter coñecementos no uso dun equipo informático a nivel usuario
- NON é necesario ter coñecementos de programación para o aproveitamento educativo deste ODE, ainda que telos, millora a experiencia e a profundidade dos coñecementos adquiridos