Mestrado Integrado em Engenharia Informática e Computação
Fundamentos da Programação
Ocorrência: 2018/2019
—
Unidade: Fundamentos da Programação
Código: EIC0005
Sigla: FPRO
Curso: MIEIC
Anos Curriculares: 1º
Página oficial: Sigarra
Créditos ECTS: 6
Horas de Contacto: 70
Horas Totais: 162
Ocorrência: 2018/2019
Semestre: 1S
Teóricas: 2x1,5h: João Correia Lopes (JCL)
Teórico-Práticas: 7x2h: João Correia Lopes (JCL) & Rui Camacho (RCS)
Atendimento: 1x1h: João Damas
Português.
1. INTRODUÇÃO
A fluência no processo de desenvolvimento de software é um pré-requisito básico para o trabalho dos engenheiros de informática. Para usar computadores na resolução de problemas de maneira eficaz, os estudantes devem ser competentes na leitura e escrita de programas usando linguagens de programação de Alto Nível.
2. OBJETIVOS ESPECÍFICOS
O objetivo global desta Unidade é dar ao aluno a capacidade de criar algoritmos e de usar uma linguagem de programação para implementar, testar e depurar algoritmos para resolver problemas simples.
O aluno será capaz de entender e usar os conceitos fundamentais de programação e a abordagem Funcional da programação, especificamente a programação livre de efeitos (effect-free), onde as chamadas de função não têm efeitos colaterais e as variáveis são imutáveis, e de contrastar esta abordagem com a abordagem Imperativa.
3. DISTRIBUIÇÃO PERCENTUAL
Componente científica: 40%
Componente tecnológica: 60%
No final do curso, espera-se que o estudante consiga resolver problemas através do desenvolvimento de programas de complexidade média, usando as abordagens ou paradigmas de programação imperativa e funcional.
Mais especificamente, o estudante deverá ser capaz de::
Presencial.
Não são necessários conhecimentos prévios.
O envolvimento contínuo do estudante com a Unidade é promovido, tanto com o estudo e discussão dos tópicos em aulas teóricas e teórico-práticas como através de trabalhos de programação dentro e fora das aulas.
São usadas ferramentas de correção automática de código para aumentar a eficiência do feedback dado aos estudantes.
O estudante é encorajado a encontrar as melhores ideias para resolver problemas específicos, executá-las e implementar as soluções de programação, de forma elegante, legível e eficiente (em tempo e em espaço).
A linguagem de programação Python é usada na implementação.
As aulas teóricas são usadas para apresentar e discutir os tópicos do programa, usando um computador ligado a um projetor multimédia.
As aulas teórico-práticas são usadas para ajudar os estudantes a entender os tópicos do programa e a resolver as tarefas de programação semanais.
As tarefas de programação em aula teórica e fora das aulas são dadas, semanalmente, para melhorar o desenvolvimento regular e eficaz dos processos de aprendizagem autónomos.
Tarefas em sala de aula são usadas para avaliação somativa no final de cada aula teórica (questionários Moodle).
Além disso, uma plataforma baseada em jogos (Kahoot) é usada para fazer uma avaliação formativa, a fim de avaliar o quão eficazes são as aulas teóricas e ajudar a ajustar o ritmo e a ênfase nos tópicos de aula.
Ciências Físicas > Ciência de computadores > Programação
Avaliação distribuída sem exame final.
Descrição | Tipo | Tempo (horas) | Data de Conclusão |
---|---|---|---|
Participação presencial (estimativa) | Aulas | 70 | |
PE1 | Teste/Exame | 0 | 26/10/2018 |
PE2 | Teste/Exame | 0 | 23/11/2018 |
PE3 | Teste/Exame | 0 | 21/12/2018 |
PE | Teste/Exame | 0 | 08/01/2019 |
TE | Teste/Exame | 0 | 11/01/2019 |
Estudo | Estudo | 92 | |
Total: | 162 |
Os estudantes são admitidos ao exame teórico (TE), se não excederem o limite de faltas (25% do número total de aulas teórico-práticas estimadas) e se obtiverem um mínimo de 40% na componente de avaliação associada à avaliação prática em computador (PE) .
A avaliação será baseada nas seguintes componentes::
LE = Exercícios em sala de aula teórica
RE = Exercícios de programação semanais para casa e aulas teórico-práticas
PEn = Avaliação prática em computador (n-ésimo)
PE = (PE1 + PE2 + PE3) / 3
TE = Avaliação teórica com consulta de um livro
Classificação final = 10% LE + 10% RE + 40% PE + 40% TE
Observações:
A avaliação deste curso usa três tipos de provas::
A classificação final será a média da classificação de duas componentes de avaliação: Avaliação prática em computacional (PE) e Avaliação teórica (TE).
Classificação final = 50% PE + 50% TE
Observações:
O estudante pode solicitar um exame único, com consulta de apenas um livro, com nota numa escala de 0 a 20.
Se a classificação final for maior que 17, o estudante pode ser submetido a um exame oral e a nota final é a média das duas.