Currículo
Projeto de Programação Multiparadigma PPM
Contextos
Groupo: EI - 2020 > 1º Ciclo > Unidades Curriculares Obrigatórias
Groupo: EI - 2020 > 1º Ciclo > Unidades Curriculares Obrigatórias
ECTS
6.0 (para cálculo da média)
Objectivos
Ao completar com sucesso esta unidade curricular, o estudante estará apto a: OA1: entender os princípios da programação funcional; OA2: escrever programas puramente funcionais; OA3: diferienciar os benefícios das características do paradigma funcional comparativamente com outros paradigmas de programação; OA4: implementar aplicações multiparadigma, com uma componente interativa, de média dimensão; OA5: trabalhar em equipa.
Programa
Os conteúdos programáticos (CP) são: CP1: Introdução ao paradigma funcional em programação e aos seus conceitos fundamentais; CP2: Conceitos avançados de programação funcional (funções puras, funções de ordem superior, composições de funções, imutabilidade); CP3: Introdução às tecnologias essenciais de suporte à programação em equipa; CP4: Programação orientada a eventos; CP5: Padrões para interface do utilizador; CP6: Integração de programas multiparadigma;
Método de Avaliação
Avaliação ao longo do semestre com Prova Escrita individual (PE) realizada durante o período de avaliação e, Projeto (PRJ) realizado em trabalho de grupo com 2 entregas (durante o período letivo), discussão e aferição individual do PRJ. As classificações possíveis na aferição individual são A, B ou C, definindo a nota do PRJ (np): A - np = à classif. do PRJ B - np = 80% da classif. do PRJ C - reprov. à UC Classificação final: 40%PE + 60%np Nota mínima 9.5 valores em ambos PE e np Não existe avaliação por exame Assiduidade não é usada cm critério de avaliação ou reprovação Estudantes sem nota mínima no projeto (ou que não o realizem) não têm acesso à prova escrita, ficando automaticamente reprovados à UC. Em caso de reprovação na 1ª época, o aluno pode voltar a realizar a prova escrita na 2ª época (e na época especial se a ela tiver acesso) mantendo a nota do Projeto. Não é possível melhorar a nota do projeto entre as avaliações de 1ª e de 2ª época. A obrigatoriedade de nota mínima no projeto também se aplica à Época Especial. Caso o estudante já tenha realizado e obtido nota mínima no projeto durante o período normal de lecionação da UC, o mesmo será considerado para a Época Especial. Caso ainda não tenha realizado o projeto, deverá entregá-lo até à data definida e realizar a discussão.
Carga Horária
Carga Horária de Contacto -
Trabalho Autónomo - 95.0
Carga Total -
Bibliografia
Principal
- Backfield, J. (2014). Becoming Functional: Steps for Transforming Into a Functional Programmer. ISBN 978-1449368173. Chiusano, P., & Bjarnason, R. (2014). Functional Programming in Scala. ISBN 978-1617290657. Wampler, D., & Payne, A. (2015). Programming Scala: Scalability = Functional Programming + Objects. ISBN 978-1491949856 Schildt, H. (2015). Introducing JavaFX 8 Programming. ISBN 978-0071842556. Tidwell, J., Brewer, C., & Valencia, A. (2020). Designing Interfaces: Patterns for Effective Interaction Design. ISBN 978-1492051961.:
Secundária
- Hutton, G. (2007). Programming in Haskell. ISBN 978-0521692694. Coplien, J. O. (1998). Multi-Paradigm Design for C++. ISBN 978-0201824674.: