Currículo
Programação Avançada M4310
Contextos
Groupo: Engenharia de Telecomunicações e Informática > 2º Ciclo > Parte Escolar > Optativas > 2.º Ano
Groupo: Engenharia de Telecomunicações e Informática > 2º Ciclo > Parte Escolar > Optativas > 1.º Ano
Groupo: Engenharia de Telecomunicações e Informática > 2º Ciclo > Parte Escolar > Optativas > 1.º Ano
Groupo: Engenharia de Telecomunicações e Informática > 2º Ciclo > Parte Escolar > Optativas > 1.º Ano
Groupo: Engenharia de Telecomunicações e Informática > 2º Ciclo > Parte Escolar > Optativas > 2.º Ano
ECTS
6.0 (para cálculo da média)
Objectivos
Após a conclusão desta unidade curricular o estudante deverá ficar apto a: OA1. Conhecer os fundamentos de programação funcional OA2. Aplicar mecanismos de meta-programação OA3. Desenhar APIs (application programming interfaces) OA4. Desenvolver software reutilizável
Programa
CP1. Introdução à linguagem Kotlin CP2. Meta-programação e anotações CP3. Padrões de desenho para extensibilidade CP4. Sistemas baseados em plugins
Método de Avaliação
Avaliação Periódica: - Quizzes em tempo de aula (20%) - Avaliação intermédia de projeto (20%), durante o período letivo - Projeto (60%), com entrega e discussão durante o período de avaliação (época de exames) Para aprovação à UC é exigida uma assiduidade mínima às aulas efetivamente lecionadas de 50%. A realização de Projeto é única forma de avaliação, não existe a possibilidade de avaliação por Exame. A avaliação em Época Especial consiste na entrega e discussão do Projeto, sendo obrigatório que o mesmo tenha sido iniciado e acompanhado pelo docente durante o período letivo.
Carga Horária
Carga Horária de Contacto -
Trabalho Autónomo - 113.0
Carga Total -
Bibliografia
Principal
- André L. Santos, Livro digital de apoio (Kotlin, padrões de desenho), 2021.:
Secundária
- Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Design Patterns. Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995. Joshua Bloch, Effective Java (3ª edição), 2017. Dmitry Jemerov and Svetlana Isakova, Kotlin in Action, Manning, 2017. David Farley, Modern Software Engineering: Doing What Works to Build Better Software Faster, Addison-Wesley, 2021.: