Ir para o conteúdo

Material Pedagógico

Conjunto de slides usados na aulas teóricas da UC no ano letivo 2024/2025


Aula 1

Introdução
Módulos
Tipos Abstractos de Dados
Metodologia

Aula 2

Objecto
Estado, Comportamento e Identidade
Encapsulamento
Mensagens
Classe
Modelo de execução dos métodos

Aula 3

Diagrama Classes UML (atributos e operações)
Relações entre classes (associação vs composição)
Método clone e encapsulamento

Aula 4

Método equals
Método toString
Variáveis e métodos de classe
Estrutura de uma classe

Aula 5

Estruturas de Dados
GrowingArray
Colecções
Framework das Colecções
A API de Collection
ArrayList
List

Aula 6

Iteradores externos
Iterator
Iteradores internos
Expressões Lambda
Streams
Colecções e Maps
Set (HashSet e TreeSet)
compareTo()

Aula 7

TreeSet
Comparator
Interfaces (Comparable e Comparator)
Criação de estruturas ordenadas
Map
Exemplos

Aula 8

Hierarquia de Classes e Herança
Diagrama de classe com herança
O mecanismo de herança
Criação das instâncias das subclasses
Redefinição variáveis e métodos
Modificadores e redefinição de métodos

Aula 9

Compatibilidade entre classes e subclasses
Polimorfismo
Classes Abstractas
Herança vs Composição

Aula 10

Notação do Diagrama de Classe UML
Interfaces (elementos e hierarquia)
Default Methods
Métodos static em interfaces
Classes abstractas e interfaces
O package java.util.function
Predicate
Function
Consumer
Supplier
Tipos Parametrizados

Aula 11

Tratamento de Erros
Excepções (criar, tipos e uso)
Try e Catch
A classe Files
O padrão Facade
O padrão Strategy
Model, View, Controller

Aula 12

Múltiplas Views
O padrão Observer

Aula 13

Princípios/regras
Regra: Single responsability
Regra: Encapsulation
Regra: Most qualified class
Regra: Low coupling
Regra: Transparency
Regra: Open/Closed
O Princípio da Substituição Liskov
Regra: Abstraction
Regra: Don’t repeat yoursel
Regra: Model-view-controller