Fundamentos de programação em Python turma LSA-74.1
Apresentação
As componentes experimentais dos programas das áreas das tecnologias informáticas relevam a necessidade de fomentar o desenvolvimento de competências que permitam a aplicação das novas plataformas tecnologias relacionadas com desenvolvimento e a execução de projetos individuais ou em grupo que podem ser realizados nas escolas. O Python é uma linguagem de programação de alto nível que permite aos alunos desenvolverem habilidades de resolução de problemas e pensamento lógico. Promove a compreensão de conceitos fundamentais da informática, como algoritmos, estruturas de dados e abstração. A sintaxe simples e clara de Python torna-o acessível para iniciantes, facilitando a introdução à programação. A curva de aprendizado suave ajuda a manter os alunos focados e motivados. O Python é utilizado em diversas áreas, incluindo ciência de dados, inteligência artificial, desenvolvimento web, automação e muito mais. Isso permite que os alunos vejam a aplicação prática das habilidades de programação em múltiplos contextos, aumentando a relevância da aprendizagem. Para além disso, a proficiência em Python é altamente valorizada no mercado de trabalho e no ensino superior, proporcionando aos alunos uma vantagem competitiva em carreiras relacionadas à tecnologia e ciências exatas. Usando uma metodologia de Blended Learning (b-learning), pretende-se capacitar os professores com as habilidades e conhecimentos necessários para ensinar Python. A formação servirá também para disponibilizar recursos didáticos, plataformas de aprendizagem online e ambientes de desenvolvimento acessíveis, de forma a encorajar a realização de projetos práticos que permitam aos alunos aplicar o que aprenderam de maneira tangível e significativa.
Destinatários
Professores dos Grupos 500, 510, 530, 540 e 550
Releva
Para os efeitos previstos no n.º 1 do artigo 8.º, do Regime Jurídico da Formação Contínua de Professores, a presente ação releva para efeitos de progressão em carreira de Professores dos Grupos 500, 510, 530, 540 e 550. Mais se certifica que, para os efeitos previstos no artigo 9.º, do Regime Jurídico da Formação Contínua de Professores (dimensão científica e pedagógica), a presente ação releva para efeitos de progressão em carreira de Professores dos Grupos 500, 510, 530, 540 e 550.
Objetivos
Fomentar a troca de experiências, conhecimentos e ideias; Elaborar materiais e atividades transdisciplinares para desenvolver em ambiente da sala de aula; Envolver os participantes na definição de procedimentos de ação e na produção de materiais de intervenção adequados aos seus diferentes contextos de trabalho; Aplicar, nesses contextos, os materiais e exercícios produzidos; Refletir sobre as práticas desenvolvidas e os resultados obtidos; Configurar o ambiente computacional para programar em Python; Identificar e usar usar os tipos de dados, operadores, expressões, métodos de entrada e saída, métodos de conversão de tipos e métodos de depuração disponíveis; Descrever e usar o conceito e sintaxe de ciclos e de estruturas condicionais; Descrever e usar o conceito e sintaxe de funções; Compreender e usar o conceito de classes e objetos e como eles formam a base da programação orientada a objetos; Descrever e usar os conceitos fundamentais de Exceções; Descrever e usar os conceitos fundamentais de Testes Unitários; Descrever e usar os conceitos de acesso a Ficheiros e Bases de Dados.
Conteúdos
Módulo 1 (2 x 1,5h): Conceitos Básicos Configurar o ambiente computacional para programar em Python Identificar e usar os tipos de dados disponíveis Identificar e usar os operadores disponíveis Identificar e usar as expressões disponíveis Identificar e usar os métodos de entrada e saída disponíveis Identificar e usar os métodos de conversão de tipos disponíveis Identificar e usar os métodos de depuração disponíveis Módulo 2 (2 x 1,5h): Estruturas de Controlo Descrever o conceito de ciclo e de estrutura condicional Descrever a sintaxe de ciclos e de estruturas condicionais Implementar ciclos For e While Implementar estruturas condicionais Descrever a sintaxe e implementar ciclos aninhados Descrever a sintaxe e implementar ciclos com break e continue Descrever a sintaxe e implementar estruturas condicionais complexas Módulo 3 (2 x 1,5h): Funções Descrever o conceito de função Descrever a sintaxe de funções Implementar funções Descrever a sintaxe e implementar funções aninhadas Descrever a sintaxe e implementar funções recursivas Descrever a sintaxe e implementar funções com parâmetros padrão e nomeados Implementar funções com variáveis locais e globais Documentar funções Módulo 4 (2 x 1,5h): Programação Orientada a Objetos Compreender o conceito de classes e objetos e como eles formam a base da programação orientada a objetos Aprender a definir atributos e métodos dentro de classes para encapsular dados e comportamento Uso de construtores para inicializar objetos com um estado específico Entender os princípios da herança e como eles permitem a extensão e personalização de classes existentes Compreender o conceito de polimorfismo Implementar o encapsulamento para ocultar o estado interno de um objeto e expor apenas as partes necessárias Módulo 5 (2 x 1,5h): Exceções, Testes Unitários e Acesso a Ficheiros e Bases de Dados Manipular exceções para gerenciar erros e condições excepcionais durante a execução Descrever os conceitos fundamentais de Exceções Descrever os conceitos fundamentais de Testes Unitários Descrever os conceitos fundamentais de acesso a Ficheiros e Bases de Dados
Metodologias
Presencial: Será privilegiada a utilização de metodologias de aprendizagem ativa, como a aprendizagem baseada em problemas (Prob.BL), a aprendizagem baseada em projetos (Proj.BL), assim como uma aprendizagem baseada em desafios (CBL), que permitam a aplicação prática dos conhecimentos adquiridos. Trabalho Autónomo: Na componente de trabalho autónomo, os formandos serão desafiados a aplicar os conhecimentos adquiridos em situações práticas, através da resolução de problemas e da realização de projetos. Serão disponibilizados recursos didáticos, plataformas de aprendizagem online e ambientes de desenvolvimento acessíveis, de forma a encorajar a realização de projetos práticos que permitam aos formandos aplicar o que aprenderam de maneira tangível e significativa. Serão também propostos exercícios e desafios que permitam aos formandos consolidar e aprofundar os conhecimentos adquiridos, bem como avaliar a sua aprendizagem.
Avaliação
A avaliação dos formandos será em conformidade com o Regime Jurídico da Formação Contínua, o nº 2 do Artigo 46º do ECD, aprovado pelo Decreto-Lei nº 15/2007, de 19 de janeiro e a Carta Circular CCPFC 3 2007 setembro. A avaliação resultará da incidência nos Critérios/Parâmetros: Assiduidade e pontualidade. (10%) Questionários de avaliação da aprendizagem realizados online no final de cada módulo. (5 x 14% = 70%) Produção de uma reflexão final, individual. (20%) A avaliação final, que terá em conta os referidos parâmetros/critérios de classificação, será traduzida numa classificação expressa na escala de 1 a 10 valores: insuficiente (1 a 4,9 valores), regular (5 a 6,4 valores), bom (6,5 a 7,9 valores), muito bom (8 a 8,9 valores) e excelente (9 a 10 valores).
Bibliografia
Portela, F. & Pereira, T. (2023). Introdução à Algoritmia e Programação com Python. Lisboa: FCA Editora de Informática, Lda. ISBN: 978-972-722-931-4Carvalho, A. (2021). Práticas de Python: Algoritmia e Programação. Lisboa: FCA Editora de Informática, Lda. ISBN: 978-972-722-918-5
Cronograma
Sessão | Data | Horário | Duração | Tipo de sessão |
1 | 06-01-2025 (Segunda-feira) | 18:00 - 21:00 | 3:00 | Online síncrona |
2 | 20-01-2025 (Segunda-feira) | 18:00 - 21:00 | 3:00 | Online síncrona |
3 | 03-02-2025 (Segunda-feira) | 18:00 - 21:00 | 3:00 | Online síncrona |
4 | 17-02-2025 (Segunda-feira) | 18:00 - 21:00 | 3:00 | Online síncrona |
5 | 10-03-2025 (Segunda-feira) | 18:00 - 21:00 | 3:00 | Online síncrona |