Neste terceiro post, iremos explorar os relacionamentos entre objetos e classes.
Associação
A associação é um relacionamento entre classes ou objetos. As associações são modeladas com base nas relações reais dos objetos e identificam quais objetos se comunicam entre si.
O diagrama a seguir apresenta uma associação entre duas classes.
Uma associação possui uma série de ítens de modelagem, entre eles:
- Rótulo: Texto de poucas palavras (em geral uma ou duas) que descreve a associação
- Direção: Uma ou duas setas que indicam o sentido de navegação. Uma única seta indica uma associação unidirecional. Duas setas (ou a omissão de ambas) indicam uma associação bidirecional
- Cardinalidade: Indicada nas extremidades da associação, informa as multiplicidades da relação. Opções:
0..1 - zero ou um (relação opcional) 1 - apenas um (relação obrigatória) 0..* - zero ou mais 1..* - um ou mais n - apenas n 0..n - zero a n 1..n - 1 a n
Agregação
A agregação é uma relação entre classes ou objetos, onde um é classificado como "parte" de outro. Ela representa uma relação onde um objeto é feito de outros objetos.
O diagrama a seguir apresenta uma relação de agregação.
Composição
É um tipo especial de agregação, mais forte, onde um objeto é totalmente responsável por suas partes. Além disso, uma "parte" pertence a apenas um objeto agregador.
Diagrama com exemplo de composição:
Conceitos da OO nos posts anteriores:
- classe, objeto, atributo, método, instância, classe concreta
- abstração, coesão, acoplamento, encapsulamento, mensagem, polimorfismo, colaboração
Nos próximos posts, ainda serão tratados:
0 Comments:
Post a Comment