41
PROGRAMAÇÃO OBJECT ORIENTED AULA 03 DIAGRAMA DE CLASSES - UML Docente: Samuel Lima [email protected]

AULA_03

Embed Size (px)

DESCRIPTION

java

Citation preview

  • PROGRAMAO OBJECT ORIENTED

    AULA 03

    DIAGRAMA DE CLASSES - UML

    Docente: Samuel [email protected]

  • UML UNIFIED MODELING LANGUAGE

    UML a sigla de Unified Modelling Language, que pode ser traduzido por Linguagem de Modelao Unificada.

    A UML uma linguagem que utiliza uma notao padro para especificar, construir, visualizar e documentar sistemas de informao orientados por objectos.

  • UML - CLASSES

  • UML - CLASSES

  • UML - CLASSES

  • UML - CLASSES

  • UML - CLASSES

  • UML - CLASSESEXEMPLO REPRESENTAO (RATIONALROSE)

  • UML - CLASSESEXEMPLO REPRESENTAO (ASTAH)

  • RELACIONAMENTO ENTRE CLASSES

    ASSOCIAO

    AGREGAO

    COMPOSIO

    ESPECIALIZAO/GENERALIZAO(HERANA)

  • RELACIONAMENTO ENTRE CLASSES

  • RELACIONAMENTO ENTRE CLASSES

  • RELACIONAMENTO ENTRE CLASSES

  • RELACIONAMENTOS - ASSOCIAO

    Uma associao um relacionamento estrutural que indica que os objetos de uma classe esto vinculados a objetos de outra classe.

    Uma associao representada por uma linha slida conectando duas classes.

  • RELACIONAMENTOS - ASSOCIAO

    EXEMPLO REPRESENTAO (RATIONAL ROSE)

  • RELACIONAMENTOS - ASSOCIAO

    EXEMPLO REPRESENTAO (ASTAH)

  • MULTIPLICIDADE OU CARDINALIDADE

  • AGREGAO

    A associao entre classes sem agregao reflete que ambas as classes se encontram no mesmo nvel conceitual.

    Por outro lado, uma relao de associao com agregao traduz que existe uma relao do tipo is-part-of ou has-a, o que corresponde ao fato de uma instncia de determinada classe possuir ou ser composta por vrias instncias de outra classe.

    A informao de agregao representada por um losango colocado junto classe que representa o elemento agregador ou o todo.

  • AGREGAO

  • AGREGAO

  • AGREGAO

    O diamante indica

    a classe Todo

    (a que agrega)

  • COMPOSIO

    A composio, ou agregao composta uma variante agregao simples, em que adicionada a seguinte semntica:

    (1) forte pertena do todo em relao parte, e

    (2) tempo de vida delimitado (as partes no podem existir sem o todo).

    Adicionalmente, o todo responsvel pela disposio das suas partes, ou seja, o todo responsvel pela criao e destruio das suas partes.

    A informao de agregao composta, ou composio representada por um losango cheio colocado junto classe que representa o elemento agregador ou o todo.

    Os objetos parte s podem pertencer a um nico objeto todo e tm o seu tempo de vida coincidente com o dele.

  • ASSOCIAO - COMPOSIO

  • ASSOCIAO - COMPOSIO

  • CLASSE DE ASSOCIAO

    Numa relao de associao entre classes, aassociao pode tambm ter os seus prpriosatributos (e eventualmente operaes), devendoser, por conseguinte, modelada tambm comouma classe.

    Este tipo de classes designa-se por classe-associao

  • CLASSE DE ASSOCIAO

  • CLASSE DE ASSOCIAO

  • CLASSE DE ASSOCIAO

  • ASSOCIAES N - RIAS (N 3)

    Associaes N-rias, com n maior ou igual a 3,so pouco comuns na modelagem de classes.Contudo, h situaes em que a aplicao destetipo de associaes vantajosa em termos daclareza do modelo.

    Nestas circunstncias, a associao representada por um losango com linhas paratodas as suas classes participantes

  • ASSOCIAES N - RIAS (N 3)

  • GENERALIZAO/ESPECIALIZAO (HERANA)

    A generalizao a relao entre uma classe (designada por super-classe) e uma ou mais variaes de si prpria (designadas por sub-classes).

    A super-classe tem atributos e funcionalidade comuns a todas as classes, enquanto cada sub-classe adiciona a essa parte comum atributos e/ou funcionalidade especfica a cada sub-classe

  • GENERALIZAO/ESPECIALIZAO (HERANA)

  • GENERALIZAO/ESPECIALIZAO (HERANA)

    A especializao tem exatamente o mesmo significado que a generalizao, mas oferece uma outra perspetiva sobre a estrutura do sistema - o sistema visto de cima para baixo, enquanto na generalizao o sistema visto de baixo para cima.

    A generalizao e a especializao so, assim, apenas diferentes formas de ver a mesma relao entre classes num diagrama.

    Podemos ter vrios nveis de generalizao. No caso anterior, s temos um nvel.

  • INTERFACES

    Uma interface define um comportamentoobrigatrio que alguma classe deve possuir.

    As interfaces permitem conhecer umdeterminado elemento, escondendo os seusdetalhes internos, por exemplo: os detalhesde implementao.

    Uma interface realizada (ouimplementada) por uma ou mais classes, asquais prometem implementar todos osmtodos nela especificados.

  • COMO REPRESENTAR A INTERFACE

  • COMO REPRESENTAR A INTERFACE

  • COMO REPRESENTAR A INTERFACEEXEMPLO REPRESENTAO (RATIONALROSE)

  • COMO REPRESENTAR A INTERFACEEXEMPLO REPRESENTAO (ASTAH)

  • CLASSES ABSTRATAS

  • CLASSES ABSTRATAS

  • EXEMPLO