ISLA IPGT 7337
Fundamentos de Programação
Desenvolvimento de Aplicações de Inteligência Artificial (CTSP) (ISLA - IPGT)
-
ApresentaçãoPresentationPretende-se que os alunos aprendam conceitos básicos sobre programação e técnicas de programação, particularmente no contexto da linguagem Python. Nesta UC, os alunos irão aprender a programar em Python, dos fundamentos mais básicos, aos tópicos mais avançados como programação orientada a objectos, funções lambda e a biblioteca Pygame. Também serão introduzidos conceitos de desenvolvimento cooperativo (utilizando git e pdoc), e ferramentas de software como o Visual Studio Code e o seu debugger, focando primariamente em ferramentas de linha de comando. No decorrer da UC, os alunos terão continuamente exercícios baseados numa aventura de texto que irão programar passo a passo. No final da UC, os alunos terão de implementar um jogo simples fornecido pelo docente da cadeira, usando Python e Pygame.
-
ProgramaProgrammeA linguagem de programação Python Objetos, expressões e tipos numéricos Variáveis e atribuição Strings e inputs Controlo de fluxo: if, while, for, break/continue. Funções, escopo e abstração Documentação (docstring) Desenvolvimento cooperativo (git) Tipos estruturados, mutabilidade e funções de ordem superior Testes e depuração Excepções e asserções Bibliotecas de jogos para Python, com ênfase em pygame.
-
ObjectivosObjectivesAo concluir a UC, o aluno deverá ser capaz de: Desenvolver programas em Python Ser capaz de desenvolver um algoritmo para a resolução de um problema Usar ferramentas de desenvolvimento cooperativo Usar um IDE para criar as suas aplicações Compreender conceitos presentes na maior parte das linguagens de programação Criar jogos simples usando o Python e o Pygame
-
BibliografiaBibliographyGuttag, J. V. (2016). Introduction to Computation and Programming Using Python, 2ª edição. MIT Press. Lubanovic, B. (2014). Introducing Python: Modern Computing in Simple Packages. O¿Reilly. Craven, P. (2016). Program Arcade Games: With Python and Pygame. Apress. Sweigart, A. (2017). Invent Your Own Computer Games With Python, 4ª edição. No Starch Press
-
MetodologiaMethodologyEsta UC inclui aulas teóricas e práticas. Os exemplos utilizados nesta unidade curricular servem o propósito de instruir os alunos sobre práticas implementadas e testadas na indústria. Os alunos irão ter contacto com vídeos, apresentações e exercícios de modo a colocar em prática os conceitos lecionados. A enfase está na avaliação contínua de conhecimentos, de forma a reforçar as aprendizagens.
-
LínguaLanguagePortuguês
-
TipoTypeSemestral
-
ECTS6
-
NaturezaNatureObrigatório
-
EstágioInternshipNão
-
AvaliaçãoEvaluation
Avaliação contínua
- Componente teórica - 10 valores (nota mínima 4,5 no conjunto de todos os testes)
- Componente prática - 10 valores (nota mínima 4,5 no conjunto de todos os exercícios/projetos)
- A frequência das aulas é obrigatória de acordo com o artigo 11º do Regulamento Geral de Avaliação da Universidade Lusófona
Época de Recurso e Época Especial
- Componente teórica - 10 valores (nota mínima 4,5): Exame, [10v]
- Componente prática - 10 valores (nota mínima 4,5): Projeto [10v]
- A avaliação de época especial está disponível de acordo com o artigo 19º do Regulamento Geral de Avaliação da Universidade Lusófona


