Currículo

Programação Avançada M4310

Contextos

Groupo: Engenharia Informática > 2º Ciclo > Parte Escolar > Ramos > Sistemas de Informação e Gestão do Conhecimento > Optativas > 1º Ano

Groupo: Engenharia Informática > 2º Ciclo > Parte Escolar > Ramos > Multimédia > Optativas > 1º Ano

Groupo: Engenharia Informática > 2º Ciclo > Parte Escolar > Ramos > Sistemas de Informação e Gestão do Conhecimento > Optativas > 2º Ano

Groupo: Engenharia Informática > 2º Ciclo > Parte Escolar > Ramos > Multimédia > Optativas > 1º Ano

Groupo: Engenharia Informática > 2º Ciclo > Parte Escolar > Ramos > Sistemas de Informação e Gestão do Conhecimento > Optativas > 1º Ano

Groupo: Engenharia Informática > 2º Ciclo > Parte Escolar > Ramos > Multimédia > Optativas > 1º Ano

Groupo: Engenharia Informática > 2º Ciclo > Parte Escolar > Ramos > Sistemas de Informação e Gestão do Conhecimento > Optativas > 2º Ano

Groupo: Engenharia Informática > 2º Ciclo > Parte Escolar > Ramos > Multimédia > Optativas > 2º Ano

Groupo: Engenharia Informática > 2º Ciclo > Parte Escolar > Ramos > Sistemas de Informação e Gestão do Conhecimento > Optativas > 1º Ano

Groupo: Engenharia Informática > 2º Ciclo > Parte Escolar > Ramos > Multimédia > Optativas > 2º Ano

Groupo: Engenharia Informática > 2º Ciclo > Parte Escolar > Ramos > Sistemas de Informação e Gestão do Conhecimento > 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.:

Disciplinas de Execução

2008/2009 - 2º Semestre

2009/2010 - 1º Semestre

2010/2011 - 1º Semestre

2011/2012 - 1º Semestre

2012/2013 - 1º Semestre

2013/2014 - 1º Semestre

2014/2015 - 1º Semestre

2015/2016 - 1º Semestre

2017/2018 - 1º Semestre

2018/2019 - 1º Semestre