Eu estudei recentemente a UML e desenhei diagramas simples com setas comuns entre classes, mas sei que não é suficiente. Existem muitas outras setas: generalização, realização e etc. que têm significado para o leitor de diagrama.
Existe um recurso interessante que possa explicar cada flecha (ordinária, lisa, pontilhada, cheia de diamantes, diamante)?
Seria o melhor se houvesse alguns exemplos de código para eles.
Respostas:
Aqui estão algumas explicações dos documentos do Visual Studio 2015:
Diagramas de classes UML: Referência : https://msdn.microsoft.com/library/dd409437%28VS.140%29.aspx
Diagramas de classes UML: Diretrizes : http://msdn.microsoft.com/library/dd409416%28VS.140%29.aspx
Deixe-me saber se você tem mais perguntas.
fonte
Eu acho que essas imagens são compreensíveis.
fonte
Uma boa folha de dicas (http://loufranco.com/wp-content/uploads/2012/11/cheatsheet.pdf) :
Cobre:
E fornece algumas amostras.
fonte
Minha "folha de dicas" UML favorita é a UML Distilled , de Martin Fowler. É o único livro que li que recomendo.
fonte
Aqui está o tutorial simplificado:
UML prático
Para mais, recomendo obter alguma literatura.
fonte
Para referência rápida e exemplos claros e concisos, a Referência Rápida UML de Allen Holub é excelente:
http://www.holub.com/goodies/uml/
(Existem alguns exemplos específicos de setas e ponteiros na primeira coluna de uma tabela, com descrições na segunda coluna.)
fonte
Uma descrição muito fácil de entender é a documentação do yuml , com exemplos para diagramas de classes, casos de uso e atividades.
fonte
A resposta aceita foi dita: Faltam algumas explicações. Por exemplo, qual é a diferença entre uma associação unidirecional e bidirecional? No exemplo fornecido, tanto faz existir. (Ambos os '5 estão nas setas)
Se você procura uma resposta mais completa e tem mais tempo, aqui está uma explicação completa.
fonte
Se você é mais uma pessoa do MOOC, um curso gratuito que eu recomendo que ensina todas as entradas e saídas da maioria dos diagramas UML é o da Udacity: https://www.udacity.com/course/software-architecture -design - ud821
fonte
Agregações e composições são um pouco confusas. No entanto, pense como composições são uma versão mais forte da agregação. O que isso significa? Vamos dar um exemplo: (Agregação) 1. Pegue uma sala de aula e os alunos: neste caso, tentamos analisar o relacionamento entre eles. Uma sala de aula tem um relacionamento com os alunos. Isso significa que a sala de aula é composta por um ou vários alunos. Mesmo se removermos a classe Sala de aula, a classe Alunos não precisará ser destruída, o que significa que podemos usar a classe Aluno independentemente.
(Composição) 2. Dê uma olhada nas páginas e na classe Book. Nesse caso, páginas é um livro, o que significa que coleções de páginas compõem o livro. Se removermos a classe book, toda a classe Page será destruída. Isso significa que não podemos usar a classe da página independentemente.
Se você ainda não está claro sobre este tópico, assista a este vídeo maravilhoso, que explicou a agregação mais claramente.
https://www.youtube.com/watch?v=d5ecYmyFZW0
fonte