segunda-feira, 16 de março de 2015

0.0.0.11.5 - Diagramas de Classes

Diagramas de Classes são um tipo de diagrama que faz parte da Unified Modeling Language (UML). Nesta linguagem um programa é especificado através de diagramas. Quando o projeto estiver concluído, haverá uma linguagem que constrói executáveis a partir de diagramas (de caso de uso, atividades, sequência, comunicação, timming e classes). No momento, há alguns geradores de código como ArgoUML, que já são úteis no gerenciamento de projetos, mas ainda não há implementação completa da ferramenta.

Voltando aos diagramas de classe, eles representam classes (atributos e métodos) e as relações entre elas.

Classes são representadas por retângulos com três divisões onde a primeira contém o nome da classe, a segunda os atributos e a terceira os métodos. Os modificadores de acesso são especificados por:
+ (public), # (protected), ~ (package protected) e - (private).

Classes e métodos abstratos tem o nome (argumentos e tipo de retorno)  grafados em itálico.

Quando há mais de uma classe elas podem se relacionar:

  1. Dependência: uma classe usa (os métodos de) outra (em geral não há armazenamento como atributo);
  2. Associação: uma classe contém um atributo que é instância de outra classe, mas não está definido quem contém quem;
  3. Agregação: uma classe contém (é proprietária de) um atributo que é instância de outra classe e faz sentido compartilhar esse atributo;
  4. Composição: uma classe contém (é proprietária de) um atributo que é instância de outra classe e não faz sentido compartilhar esse atributo;
  5. Generalização (Herança): uma classe é um tipo de outra classe.
Multiplicidade da relação:
um para um: 1...1
um para muitos: 1...*
muitos para um: *...1
muitos para muitos: *...*


Fonte: MILES, R. HAMILTON, K. - Learning UML 2.0 - 2006, O'Reilly - ISBN 978-0-596-00982-3

Nenhum comentário:

Postar um comentário