Sunteți pe pagina 1din 6

08/09/2017

Classe de associação
Curso: Modelagem Conceitual com Diagrama de Classes da UML
https://www.udemy.com/user/nelio-alves
Prof. Dr. Nelio Alves

Agenda
• Exemplo motivador
• Classe de associação em associações muitos-para-muitos
• Classe de associação vs. Classe comum

1
08/09/2017

Exemplo motivador
Deseja-se fazer um sistema para manter um cadastro de filmes e artistas
(atores/atrizes), bem como a informação de qual artista atuou em cada filme.

1001, Jean-Claude Van Damme


8010, The Expendables 2, 2012
1002, Leonardo DiCaprio
8011, Titanic, 1997
1003, Kate Winslet
8012, Divergent, 2014
1004, Sylvester Stallone

1001, Jean-Claude Van Damme


8010, The Expendables 2, 2012
1002, Leonardo DiCaprio
8011, Titanic, 1997
1003, Kate Winslet
8012, Divergent, 2014
1004, Sylvester Stallone

2
08/09/2017

Problema
Além disso, desejo saber também o nome do personagem desempenhado por cada artista em cada filme

1001, Jean-Claude Van Damme


8010, The Expendables 2, 2012
1002, Leonardo DiCaprio
8011, Titanic, 1997
1003, Kate Winslet
8012, Divergent, 2014
1004, Sylvester Stallone

Problema
Além disso, desejo saber também o nome do personagem desempenhado por cada artista em cada filme

1001, Jean-Claude Van Damme, Vilain


8010, The Expendables 2, 2012
1002, Leonardo DiCaprio, Jack Dawson
8011, Tinatic, 1997
1003, Kate Winslet, Rose ERRADO
8012, Divergent, 2014
1005, Kate Winslet, Jeanine

1004, Sylvester Stallone, Barney Ross

8010, The Expendables 2, 2012, Vilain


1001, Jean-Claude Van Damme
8013, The Expendables 2, 2012, Barney Ross
1002, Leonardo DiCaprio
8011, Tinatic, 1997, Jack Dawson
1003, Kate Winslet
ERRADO
8014, Tinatic, 1997, Rose
1004, Sylvester Stallone
8012, Divergent, 2014, Jeanine

3
08/09/2017

Conclusão: o nome do personagem é um dado que pertence à associação.


Neste caso, o nome do personagem deverá ser armazenado em um objeto intermediário.
Vilain
1001, Jean-Claude Van Damme
8010, The Expendables 2, 2012
Barney Ross
1002, Leonardo DiCaprio
8011, Tinatic, 1997 Jack Dawson
1003, Kate Winslet
8012, Divergent, 2014 Rose
1004, Sylvester Stallone
Jeanine

Classe de
associação:

Atenção!
A classe de associação indica associação ÚNICA!
Vilain
1001, Jean-Claude Van Damme
8010, The Expendables 2, 2012
Barney Ross
1002, Leonardo DiCaprio
8011, Tinatic, 1997 Jack Dawson
1003, Kate Winslet
8012, Divergent, 2014 Rose
1004, Sylvester Stallone
Jeanine

Este modelo indica que para um


mesmo artista e um mesmo filme,
só pode haver uma participação

Isso não pode:

4
08/09/2017

Então como representar um modelo no qual um


mesmo artista pode representar mais de um
personagem em um mesmo filme?

Alex

8010, Double Impact, 1991 Chad Wagner

Vilain
1001, Jean-Claude Van Damme
8010, The Expendables 2, 2012
Barney Ross
1002, Leonardo DiCaprio
8011, Tinatic, 1997 Jack Dawson
1003, Kate Winslet
8012, Divergent, 2014 Rose
1004, Sylvester Stallone
Jeanine

1, Alex

8010, Double Impact, 1991 2, Chad Wagner

3, Vilain
1001, Jean-Claude Van Damme
8010, The Expendables 2, 2012
4, Barney Ross
1002, Leonardo DiCaprio
8011, Tinatic, 1997 5, Jack Dawson
1003, Kate Winslet
8012, Divergent, 2014 6, Rose
1004, Sylvester Stallone
7, Jeanine

5
08/09/2017

Resumo da aula
Associação muitos-para-muitos: ALERTA!
Tem atributo na associação?
SIM: então haverá um novo conceito no meio!

não
O mesmo "A" pode estar associado
com o mesmo "B" mais de uma vez?

a b sim

O mesmo artista pode participar do mesmo


filmes mais de uma vez?

S-ar putea să vă placă și