Programação Orientada a Objetos

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:
– Fundamentos de Programação;
– Estruturas de Dados.

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.

Métodos de Avaliação

No que diz respeito à avaliação apenas está prevista a avaliação por exame:

1. Avaliação por Exame (época normal, época de recurso, época especial):

a) um exame individual;

b) um projeto individual.

Classificação Final = Exame (12/20) + Projeto (08/20)

Regras Gerais:

a) cada um dos componentes de avaliação possui uma classificação mínima de 9,00 valores [ou 45%, numa escala de 100] para que seja obtida aprovação na unidade curricular;

b) a realização dos projetos envolve a entrega de relatórios sobre os temas em estudo através da plataforma de gestão académica (Inforestudante) e a sua respetiva apresentação e defesa;

c) cada época de avaliação é independente das restantes épocas de avaliação, apresentando enunciados próprios, distintos das restantes épocas de avaliação.

d) a realização das diferentes avaliações depende da inscrição prévia através da plataforma de gestão académica.


    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.

    Oracle. (2024). Java platform, standard edition documentation. https://docs.oracle.com/en/java/javase/

    Urma, R., Fusco, M., & Mycroft, A. (2018). Modern java in action – Lambdas, streams, functional and reactive programming. Manning.