Escolar Documentos
Profissional Documentos
Cultura Documentos
Diagrama de classes
Representa a essncia da UML.
Objeto
Conceito
Unidade real ou abstrata
Individualizada Identificvel
Caractersticas
Estado
Identidade
Comportamento
Objeto
Estado
Caractersticas herdadas ou distintas que contribuem para que
se torne nico.
Identidade
Propriedade que o distingue dos demais. Preservada mesmo quando seu estado muda.
Comportamento
Define o modo como age e reage a estmulos externos.
Objeto
Exemplos
Pessoa Equipamento Dinheiro Automvel
Classe
Conceito
Um conjunto de objetos que compartilham estrutura e
comportamento comuns. Compartilham as mesmas caractersticas de:
Atributos Operaes
Relaes
Semntica
Classe
Exemplo
Classe indivduo
Classe = grupo de
objetos similares que compartilham atributos e comportamento semelhantes.
Classe
Representao das classes
Variaes
Atributo
Definio
Menor unidade que em si possui significncia prpria e interrelacionada com o conceito lgico da classe qual pertence.
Atributos
Sintaxe padro
Visibilidade nomeDoAtributo: TipoDeExpresso = ValorInicial
Visibilidade de atributo
+ visibilidade pblica (default)
Significa que todos tm acesso.
O atributo pode ser utilizado por operaes declaradas dentro de outras classes.
Visibilidade de atributo
# visibilidade protegida
acessado atravs de operaes dentro da mesma classe.
Visibilidade de atributo
- visibilidade privada
parte da interface de uma classe. Mas no visvel a quaisquer outras classes. S pode ser acessado por operaes declaradas dentro da mesma classe.
Visibilidade de atributo
Visibilidade pblica
Visibilidade protegida
Visibilidade privada
Identificador da classe
Conceitos
Individualiza e identifica cada objeto de uma classe.
Ser o ponto de referncia para sua distino de todos os demais dentro da classe. O identificador (OID - Object Identifier) atribudo automaticamente a objetos pelo gerenciador de objetos. Atuam como atributos de referncia para representar associaes entre objetos. Semelhante as chaves estrangeiras no modelo relacional.
Identificador da classe
Modelo relacional
Cliente
codigoCli PK nomeCliente endereo
Venda
dataVenda valorVenda codigoCli FK
nomeCliente endereo
Uma diferena entre atributo de referncia e chave estrangeira o fato de que ela est associada a valores visveis ao usurio, enquanto o outro no est.
Operao
Conceitos
Servio de classe ou comportamento resultante de um procedimento algortmico. H uma distino entre operao e mtodo. Uma operao algo invocado por um objeto (procedimento de chamada). Mtodo a implementao de uma operao. Uma operao executada sempre que um objeto recebe uma mensagem de outro objeto.
Operao
Sintaxe padro
Visibilidade nomeDaOperao (parmetro): ExpressoDeTipoDeRetorno {Propriedade}
Operaes
Operao
Classificao
Construtoras
Operaes que criam e/ou inicializam o estado de um objeto;
Seletoras
Operao que tem acesso, mas no pode alterar, o valor ou estado de um objeto;
Modificadoras
Operao que altera o valor ou estado de um objeto;
Destrutoras
Operao que destri/desabilita um objeto.
Relacionamentos
Tipos de relacionamentos
Associao
Agregao
Generalizao/especificao Dependncia
Associao
Conceitos
uma relao que descreve um conjunto de vnculos entre
elementos do modelo. Um vnculo uma conexo semntica entre tuplas de objetos. Nomenclaturas em funo do nmero de classes envolvidas:
Associao unria Associao binria Associao n-ria
Associao
Associao unria
Relacionamento de uma classe consigo prpria.
Tambm conhecida como associao reflexiva.
Associao
Associao binria
Quando h duas classes envolvidas na associao de forma direta de uma para a outra. Desenhada com uma linha slida que conecta duas classes. Exemplo:
Associao
Associao n-ria
Associao entre trs ou mais classes
Associao ternria
Avaliao
Associao
Nome da associao
Pode-se usar um nome para representar a natureza
da relao entre as classes associadas.
Associao
Multiplicidade
Especifica a quantidade de correspondncia de um
objeto na classe A em objetos equivalentes na classe B.
Exemplo:
Associao
Multiplicidade
1
exatamente um
0..1
m..n
Classe
Associao
Multiplicidade (outros exemplos)
Multiplicidade 0..1 1 0..* * 1..* 1..15 1..2,7..15,19,23..* Significado zero ou um somente 1 maior ou igual a zero maior ou igual a zero maior ou igual a um de 1 a 15, inclusive de 1 a 2, de 7 a 15, 19 ou acima de 23 (inclusive)
Associao
Navegabilidade
Representao da navegabilidade de um objeto de uma classe
a objeto de outra classe. percebida por objetos que mantm referncias de algum tipo entre objetos associados. Exemplo:
No exemplo acima poderamos indicar que um pedido tem a responsabilidade de informar a qual cliente pertence, mas um cliente no teria a habilidade de dizer quais pedidos possui.
Agregao
Definio
Forma especial de associao utilizada para mostrar
que um tipo de objeto composto, pelo menos em
Agregao
Exemplo:
Todo
Parte
Agregao
Composio
Tipo de agregao com uma forte propriedade e vida
coincidente da parte com o todo. O objeto todo declara uma instncia real do objeto parte dentro do seu prprio corpo tornando o objeto parte fisicamente nele contido. semanticamente equivalente a um atributo, mas pode ser visualmente mais atraente quando a parte tem sua prpria estrutura interna.
Agregao
Composio
O fim do objeto todo acarreta o fim das suas partes. Exemplos:
Todo
Parte
Generalizao
Definio
um relacionamento de taxionomia entre um elemento mais
geral e um elemento mais especfico que completamente consistente com o primeiro somando-o informao adicional
especializada.
Indica que uma classe mais geral, a superclasse, tem atributos, operaes e associaes comuns que so compartilhados por
Generalizao
Exemplos:
tipo-de
tipo-de
As subclasses herdam atributos, operaes e associaes da superclasse e agregam atributos e operaes particulares ao elemento de especializao a que se referem.
A
{Restrio}
B
{completo}: N conhecido {disjuno}: B, C, ...,N so mutuamente exclusivos
...
Herana mltipla
Definio
Exemplo:
Agregao X generalizao
Use generalizao quando:
Classe de associao
Definio
Elemento de modelagem que tem associao e propriedades de
classe. Pode ser vista como uma associao que tem propriedades de
Classe de associao
Exemplo:
Se uma classe de associao somente representa uma referncia entre classes (no contenha atributos ou operaes prprios), ela ser omitida na implementao fsica caso seja utilizado um banco de objetos. Banco de objetos aceita relaes m:n
Dependncia
Definio
Relacionamento onde uma classe cliente dependente de
alguns servios da classe fornecedora. A classe cliente no possui uma dependncia estrutural interna
Dependncia
Exemplo:
Dependncia
Fornecedor
Cliente
Dependncia
Exerccios
Mtodos
andar, correr, pular , danar, sentar e levantar