Back

Introdução à Programação

    Detalhes do curso

  • Conhecimentos de Base Recomendados

    -

  • Objetivos

    Esta Unidade Curricular (UC) pretende dotar os estudantes de conceitos e técnicas fundamentais de programação de computadores
    utilizando a linguagem Python, concretamente:
    A – Compreender o conceito de algoritmo e a abordagem top-down design;
    B – Compreender a modularização de um algoritmo através da utilização de funções e procedimentos;
    C – Compreender e utilizar as estruturas de controlo de um programa, nomeadamente a sequenciação, seleção e repetição;
    D – Compreender e utilizar variáveis, expressões e transformações de dados usando operadores;
    E – Compreender e utilizar instruções de entrada e saída de dados;
    F – Resolver problemas através da conceção e implementação de programas simples utilizando o raciocínio lógico e estruturado.

  • Métodos de Ensino

    Esta unidade curricular é estruturada em torno de aulas teórico-práticas, que combinam diversas abordagens pedagógicas para uma experiência de aprendizagem interativa e abrangente. As metodologias utilizadas incluem: 1) Aulas Teórico-Práticas (Integração do Método Expositivo e Demonstrativo): -Método Expositivo: Os conceitos são apresentados de forma clara e estruturada, utilizando-se de recursos audiovisuais para reforçar a compreensão. - Método Demonstrativo: A apresentação dos conceitos é intercalada com demonstrações práticas, onde os alunos visualizam a aplicação dos conceitos através de exemplos práticos ou simulações. 2) Realização de Exercícios Práticos: Durante as aulas, são propostos exercícios práticos de programação relacionados com a matéria abordada. Estes exercícios são uma forma crucial de aplicação prática do conhecimento teórico. Os alunos trabalham individualmente ou em conjunto nos exercícios durante a aula e entregam individualmente no final, permitindo o feedback construtivo. 3) Métodos Ativos: - Quizzes Interativos em Grupo: Utilizados durante a exposição dos conceitos para promover a discussão colaborativa e a aplicação do conhecimento em tempo real. - Exercícios Individuais Semanais: Pequenos exercícios de programação focados na matéria da semana, que incentivam a revisão contínua e a autoavaliação, e ajudam o estudante a consolidar os conhecimentos adquiridos. - Técnicas de gamificação (badges e leaderboards) associadas às atividades de aula, que promovem a aprendizagem colaborativa e o envolvimento e motivação dos estudantes. 4) Avaliação Sumativa com Teste Final Individual: Esta avaliação é realizada na fase final da unidade curricular para medir a compreensão global e a capacidade de aplicação integrada dos conceitos estudados. Esta abordagem pedagógica visa não apenas a transmissão de conhecimento, mas também o desenvolvimento de competências analíticas, colaborativas e autónomas nos alunos, preparando-os de maneira eficaz para os desafios práticos da área de estudo.

  • Estágio(s)

    Não

  • Programa

    1 – Algoritmos e técnicas fundamentais de programação
    2 – Desenvolvimento, teste, e depuração de um programa
    3 – Funções e procedimentos
    4 – Estruturas de controlo: sequenciação, seleção, repetição
    5 – Variáveis, expressões e operadores
    6 – Entrada e saída de dados

  • Demonstração de conteúdos

    Os conteúdos programáticos foram definidos em função dos objetivos e competências a serem adquiridos pelos estudantes: - Os pontos 1 e 2 estão em coerência com os objetivos de aprendizagem A e F; - O ponto 3 está em coerência com o objetivo de aprendizagem B; - O ponto 4 está em coerência com o objetivo de aprendizagem C; - O ponto 5 está em coerência com o objetivo de aprendizagem D; - O ponto 6 está em coerência com o objetivo de aprendizagem E.

  • Demonstração da metodologia

    A coerência entre as metodologias de ensino descritas e os objetivos de aprendizagem desta Unidade Curricular (UC) pode ser demonstrada da seguinte forma: Método Expositivo e Demonstrativo: A apresentação clara e estruturada de conceitos através do método expositivo facilita a compreensão dos alunos sobre os objetivos de aprendizagem, em particular o conceito de algoritmo e a abordagem top-down design, bem como a modularização de um algoritmo. A demonstração prática desses conceitos ajuda os alunos a visualizar a aplicação dessas técnicas. As demonstrações práticas são especialmente úteis para entender as estruturas de controlo de programa (sequenciação, seleção, repetição) e o uso de variáveis e operadores, essenciais para a estruturação e conceção de um programa. Realização de Exercícios Práticos de Programação: A prática constante através de exercícios práticos permite aos alunos aplicar e consolidar sua compreensão sobre a atividade da programação. Além disso, a resolução de problemas através da conceção e implementação de programas facilita o desenvolvimento do raciocínio lógico e estruturado. Métodos Ativos (Quizzes Interativos, Exercícios Individuais, Gamificação): A utilização de quizzes interativos e exercícios individuais semanais estimula a revisão contínua e a autoavaliação, aspectos cruciais para a compreensão e aplicação dos conceitos de programação. As técnicas de gamificação, como badges e leaderboards, incentivam a aprendizagem colaborativa e mantêm os alunos motivados e envolvidos com as matérias abordadas. Avaliação Sumativa com Teste Final Individual: Esta avaliação final ajuda a medir a compreensão global dos alunos e a sua capacidade de aplicar de forma integrada os conceitos de programação aprendidos, abordando todos os objetivos de aprendizagem. Em resumo, as metodologias empregadas nesta UC estão bem alinhadas com os objetivos de aprendizagem, cada uma contribuindo de maneira significativa para o desenvolvimento das competências desejadas em programação, desde a compreensão teórica até a aplicação prática usando a linguagem Python.

  • Docente(s) responsável(eis)

    -

  • Bibliografia

    - Martins, J.P. (2020) Programação em Python. Introdução à Programação Utilizando Múltiplos Paradigmas. Coleção Ensino da Ciência e da Tecnologia, 4a Ed. IST Press
    - Downey, A. (2016) Think Python: How to Think Like a Computer Scientist, 2nd Ed. O’Reilly
    - Bergin, J., Stehlik, M., Roberts, J., Pattis, R. (2013) Monty Karel: A Gentle Introduction to the Art of Object-Oriented Programming in Python, Dreamsongs Press
    - Zelle, J. (2016) Python Programming: An Introduction to Computer Science, 3rd Ed. Franklin, Beedle & Associates
    - Guttag. J. (2021) Introduction to Computation and Programming using Python: With Application to Understanding Data, 3rd Ed. MIT Press
    - Shaw, Z. (2017) Learn Python 3 the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code, Addison-Wesley Professional

  • Código

    01101729

  • Modo de Ensino

    PRESENCIAL

  • ECTS

    5.0

  • Duração

    Semestral

  • Horas

    45h Teórico-Práticas

Conteúdo atualizado em 21/03/2025 15:46
Visão Geral da Privacidade
Escola Superior de Tecnologia de Setúbal - ESTSetúbal/IPS

Este site utiliza cookies para lhe oferecer a melhor experiência possível. As informações dos cookies são armazenadas no seu navegador e permitem funcionalidades como reconhecê-lo quando regressa ao nosso site e ajudar a nossa equipa a perceber quais as secções que considera mais interessantes e úteis.

Cookies Estritamente Necessários

Os cookies estritamente necessários devem estar sempre ativados para que possamos guardar as suas preferências de configuração de cookies.

Cookies de Terceiros

Este site utiliza o Google Analytics para recolher informação anónima, como o número de visitantes do site e as páginas mais populares. Manter este cookie ativado ajuda-nos a melhorar o nosso website.