Fundamentos de Programação

Conhecimentos de Base Recomendados

Não definido.

Métodos de Ensino

A atividade letiva decorre em regime presencial, com exposição de conceitos, técnicas e métodos, com grande enfoque na resolução de problemas práticos. Será utilizado software de apoio à resolução de problemas.

Resultados de Aprendizagem

A unidade curricular de Fundamentos de Programação é destinada a estudantes sem experiência prévia de programação. Nesta unidade curricular os estudantes aprenderão os fundamentos da programação em Python necessários ao desenvolvimento de algoritmos.

Programa

1. Algoritmos e Programação

2. Introdução ao Python e ao seu ambiente de desenvolvimento

3. Variáveis, tipos de dados e operações básicas

4. Operações de entrada e saída

5. Estruturas de controlo de fluxo

5.1. Sequenciais

5.2. Seleção

5.2. Repetição

6. Funções e programação modular

7. Estruturas de dados em Python

7.1. Listas, tuplos, dicionários e conjuntos

7.2. Manipulação de strings

8. Compreensão e utilização de bibliotecas/módulos

9. Introdução ao tratamento de ficheiros

10. Projeto final

Docente(s) responsável(eis)

Paulo Jorge Pinto Soares

Métodos de Avaliação

A avaliação da unidade curricular poderá ser realizada de duas formas:

1. Avaliação Contínua
A avaliação contínua aconselha à participação regular do estudante ao longo do semestre e distribui-se da seguinte forma:

  • Realização de duas frequências, com um peso na nota final de 12 valores.
  • Projeto prático, com um peso na nota final de 8 valores

As frequências serão realizadas em contexto de aula, em datas a divulgar posteriormente na plataforma inforestudante.

O projeto prático pode ser realizado em grupos, de no máximo 2 alunos, e será sujeito a uma apresentação/defesa na última semana de aulas.

 

2. Avaliação por Exame Final
Os estudantes que não optem ou não cumpram os critérios da avaliação contínua poderão realizar um exame final prático, nas respetivas datas de avaliação regulamentadas.

A nota final resultará exclusivamente da classificação obtida no exame.


    Estágio(s)

    NAO

    Bibliografia

    • Codeone Publishing (2022). Python Programming for Beginners: The #1 Python Programming Crash Course for Beginners to Learn Python Coding Well & Fast (with Hands-On Exercises)
    • Eric Matthes  (2019). Python Crash Course, 2nd Edition: A Hands-On, Project-Based Introduction to Programming 2nd Edition
    • Mark Lutz  (2013). Learning Python, 5th Edition Fifth Edition
    • Luciano Ramalho (2022). Fluent Python: Clear, Concise, and Effective Programming 2nd Edition
    • Irv Kalb (2022). Object-Oriented Python: Master OOP by Building Games and GUIs
    • Maurice J. Thompson (2018). Python: The Bible