Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


UML para Java: Representação de Classes, Objetos, Interfaces e Diagramas, Notas de estudo de Informática

Este tutorial explica as características da unified modeling language (uml) para ilustrar projetos de sistemas orientados a objetos em java, fornecendo a notação convencional para representar classes, objetos, interfaces e diagramas. Aprenda sobre herança, relacionamentos entre classes, variáveis de instância, métodos, visibilidade, multiplicidade, exceções e estados.

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 08/12/2008

nelson-cirilo-5
nelson-cirilo-5 🇧🇷

4 documentos

1 / 6

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Grupo de Usuários Java
http://www.guj.com.br
UML para Java
Christiano Vale
Este tutorial explica brevemente as características da Unified Modeling Language (UML)
fornecendo a notação convencional que aplicamos para ilustrar Projetos Orientados a Objetos.
INTRODUÇÃO
Tendo em vista os rumores que giram em torno deste novo exame da Sun, SCJA Sun
Certified Java Associates, (que, aliás, eu fiz o exame.) onde o tema é cobrado e aproveitando a
oportunidade de apresentar de maneira simplificada como ilustrar projetos de sistemas
orientados a objetos resolvi escrever tutorial explica brevemente as características da Unified
Modeling Language(UML) fornecendo a notação convencional que aplicamos para ilustrar este
projetos. Embora ela não seja excessivamente complexa, podemos subestimar facilmente o
poder das características que ela nos fornece. Para uma apresentação mais completa leia The
Unified Modeling Language User Guide (Booch, Rumbaugh, and Jacobson 1999). Assimilando o
uso das nomenclaturas e notações padrão, aprendemos a nos comunicar no nível de projetos,
tornando-nos mais produtivos.
Classes
A figura abaixo aplica algumas características usadas para ilustrar classes:
Figura 1 – O pacote fireWorks inclui as classes fireWork e Classification.
Para indicar a existência de um pacote, coloque o nome dele em um retângulo alinhado
à esquerda, com caixa maior, na qual podem conter: classes e interfaces. A figura 1
mostra o pacote com.oozinoz.fireWorks.
A UML não exige que o diagrama mostre tudo a respeito do objeto retratado, como todo
o conteúdo do pacote ou todos os métodos de uma classe.
O nome da classe deve ser mostrado centralizado em um retângulo. (A figura 1 mostra
2 classes: Classification e fireWork).
Grupo de Usuários Java – http://www.guj.com.br – Página 1
pf3
pf4
pf5

Pré-visualização parcial do texto

Baixe UML para Java: Representação de Classes, Objetos, Interfaces e Diagramas e outras Notas de estudo em PDF para Informática, somente na Docsity!

http://www.guj.com.br

UML para Java

Christiano Vale

Este tutorial explica brevemente as características da Unified Modeling Language (UML) fornecendo a notação convencional que aplicamos para ilustrar Projetos Orientados a Objetos.

INTRODUÇÃO

Tendo em vista os rumores que giram em torno deste novo exame da Sun, SCJA – Sun Certified Java Associates, (que, aliás, eu fiz o exame.) onde o tema é cobrado e aproveitando a oportunidade de apresentar de maneira simplificada como ilustrar projetos de sistemas orientados a objetos resolvi escrever tutorial explica brevemente as características da Unified Modeling Language(UML) fornecendo a notação convencional que aplicamos para ilustrar este projetos. Embora ela não seja excessivamente complexa, podemos subestimar facilmente o poder das características que ela nos fornece. Para uma apresentação mais completa leia The Unified Modeling Language User Guide (Booch, Rumbaugh, and Jacobson 1999). Assimilando o uso das nomenclaturas e notações padrão, aprendemos a nos comunicar no nível de projetos, tornando-nos mais produtivos.

Classes

A figura abaixo aplica algumas características usadas para ilustrar classes: Figura 1 – O pacote fireWorks inclui as classes fireWork e Classification.

• Para indicar a existência de um pacote, coloque o nome dele em um retângulo alinhado

à esquerda, com caixa maior, na qual podem conter: classes e interfaces. A figura 1 mostra o pacote com.oozinoz.fireWorks.

  • A UML não exige que o diagrama mostre tudo a respeito do objeto retratado, como todo o conteúdo do pacote ou todos os métodos de uma classe.

• O nome da classe deve ser mostrado centralizado em um retângulo. (A figura 1 mostra

2 classes: Classification e fireWork ).

http://www.guj.com.br

  • As variáveis de instância de juma classe devem ser mostradas em um retângulo abaixo do nome da classe. A classe fireWork possui as varáveis de instância name, price, calssification. Coloque dois-pontos depois do nome da variável e então o tipo da variável.
  • Os métodos de uma classe podem ser mostrados em segundo retângulo, abaixo do nome dela. A classe fireWork possui um construtor, um método com o mesmo nome dela e possui pelo menos mais 3 métodos: flies(), getName(), setClassification().
  • Quando um método receber parâmetros, de forma geral devemos mostrá-los, com o método setClassification().
  • As variáveis nas assinaturas dos métodos de forma geral aparecem da seguinte forma: : . Podemos omitir ou abreviar o nome da variável se seu tipo implica o papel dela.
  • Podemos indicar que um método ou uma variável de instância de uma classe estão protegidos ( protected ) colocando o sinal sustenido(#) na sua frente. O sinal mais(+) indica que o método ou a variável é do tipo public e o sinal menos(-) indica que o método ou a variável são do tipo private.
  • Para indicar que uma variável de instância é estática – e tem escopo de classe – deixe- a sublinhada como o método flies().
  • Um retângulo com orelha pode ser usado para desenhar notas. O texto dessa nota pode conter: comentários, restrições, ou código. Uma linha tracejada é usada para anexar as notas a outros elementos do diagrama.

Relacionamentos entre classes

A figura abaixo apresenta algumas características usadas para ilustrar relacionamentos entre as classes: Figura 2 – Um objeto MachineComposite contém objetos Machine o u outros composites. A classe Customer depende da classe LikeMyStuff s em instanciá-la.

  • Coloque o nome da classe ou método em itálico para indicar que a classe ou método são abstratos.

http://www.guj.com.br

Interfaces

A figura 4 mostra as características básicas para representar interfaces. figura 4 – representação de interfaces

  • Para desenhar uma interface colocamos o texto <> e o nome da interface em um retângulo.
  • Podemos utilizar uma linha tracejada e com um ponta de flecha vazada para mostrar que uma classe implementa a interface.
  • Outra forma de mostrar que uma classe implementa uma interface é mostrar uma linha com um círculo, como um “pirulito”, e o nome dessa interface. ( TesteController implements Serializable).
  • As interfaces e seus métodos sempre são abstratos em Java. Estranhamente, ambos não aprecem em itálico, como ocorre com as classes abstratas e os métodos abstratos em classes.

Objetos

Um diagrama de objetos ilustra instâncias especificas de classes, como mostra a figura 5. Figura 5 – representação de objetos

  • Podemos mostrar um objeto fornecendo seu nome e tipo, separados por dois pontos. Opcionalmente, podemos mostrar apenas o nome, ou apenas o dois pontos e o tipo.Seu nome e/ou tipo devem ser sublinhados.
  • Utilize uma linha entre dois objetos para mostrar que um objeto tem referencia ao outro. Podemos utilizar uma ponta de flecha aberta para enfatizar a direção da referência.

http://www.guj.com.br Figura 6 – Diagrama de seqüência que mostra uma sucessão de Chamadas de métodos.

  • Podemos mostrar uma seqüência de objetos chamando métodos de outros objetos, como mostra a figura 6. A ordem das chamadas de métodos é de cima para baixo, e as linhas tracejadas indicam a existência do objeto em relação ao tempo.
  • O estereótipo <> é usado para mostrar que um objeto cria outro objeto.
  • Uma moldura em negrito em volta de um objeto é usado para mostrar que ele está ativo em uma outra thread , processo ou outro computador. A figura 6 representa uma chamada remota.

Estados

Um diagrama de estados é mostra na figura 7. Figura 7 – Um diagrama de estados mostra as transições de estado para estado

  • Mostre um estado em um retângulo com cantos arredondados.
  • Mostre as transições de estados com flechas abertas.
  • Um diagrama de estado não precisa mapear diretamente para um diagrama de classe ou de objeto, embora possamos arranjar uma transição direta.

Conclusão

Programadores sempre se deparam em situações onde os desafios possuem soluções em código, no entanto, muitos desses desafios solicitam que você faça um diagrama mostrando como as classes, pacotes e outros elementos se relacionam. Christiano Vale ( [email protected] ) é programador Java e trabalha na empresa LUCRA – CADASTROS E SERVIÇOS (Correspondente Bancário).