Conhecimentos de Base Recomendados
Os estudantes devem possuir e dominar conceitos de programação procedimental e algoritmia.
Recomenda-se a conclusão anterior das seguintes unidades curriculares:
– Programação I;
– Programação II.
Métodos de Ensino
Esta unidade curricular não apresenta aulas presenciais, decorrendo apenas os momentos de avaliação por Exame.
As componentes expositivas e práticas ocorreram no ano letivo anterior.
Resultados de Aprendizagem
No final da unidade curricular o estudante ficará habilitado a:
1. Identificar os conceitos básicos de Programação Orientada a Objetos (POO): objetos, classes, polimorfismo e herança;
2. Implementar e gerir estruturas de dados estáticos (tabelas uni e multi-dimensionais) e dinâmicos (java collections, nomeadamente arrays, vetores e dicionários);
3. Utilizar estruturas de memória persistente: ficheiros (binários, texto e objetos);
4. Planear, desenvolver e testar programas usando a linguagem Java.
Programa
1. Introdução à linguagem Java; Estrutura e sintaxe;
2. Programação Orientada a Objetos (POO): Classes e Objetos;
3. Tratamento de Exceções;
4. Estruturas de dados estáticas: Tabelas Unidimensionais e Multidimensionais
5. Estruturas de dados dinâmicas: Java Collections, incluindo Arrays, Vetores e Dicionários; Pesquisa e iteração de estruturas de dados;
6. Ficheiros: Texto, Binários e de Objetos; Java Properties; Leitura de dados a partir de dispositivos de entrada; Manipulação de ficheiros e diretorias; Streams de dados;
7. Programação Orientada a Objetos (POO): Herança e Polimorfismo.
Docente(s) responsável(eis)
Métodos de Avaliação
- - Projecto - 70.0%
- - Prova Escrita - 30.0%
- - Projecto 1 - 35.0%
- - Projecto 2 - 35.0%
- - Trabalho Prático 1 + 2 - 30.0%
Estágio(s)
NAO
Bibliografia
Flanagan, D. , & Evans, B. (2019). Java in a nutshell – A desktop quick reference (7.ª ed). O’Reilly.
Jesus, C. (2013). Curso prático de java. FCA.
Martins, F. (2017). Java 8 – POO + construções funcionais. FCA.
Martins, F. (2014). Projectos de POO em java. FCA.
Urma, R., Fusco, M., & Mycroft, A. (2018). Modern java in action – Lambdas, streams, functional and reactive programming. Manning.