web-dev-qa-db-fra.com

Diagramme de classes et génériques UML

Comment indiquez-vous une classe ou une interface générique dans un diagramme de classes? 

Je cherche vraiment deux choses:

  1. La première est de savoir comment modéliser des classes Java génériques si je le faisais avec un stylo et du papier.
  2. Deuxièmement, quels outils uml supportent les classes/interfaces génériques. 

Merci!

32

Généralement, les génériques sont représentés comme paramètre de modèle du classifieur. Voici l'exemple à quoi cela ressemble dans le plugin NetBeans UML:

enter image description here

33
Vitalii Fedorenko

UML les appelle des types paramétrés - voir exemples ici .

En ce qui concerne les outils, je sais que MagicDraw les prend en charge.

16
sfinnie

Le modèle UML vous aidera!

Définition de génériques avec des modèles UML
http://www.Eclipse.org/articles/article.php?file=Article-Defining-Generics-with-UML-Templates/index.html

5
TridenT

La première est de savoir comment modéliser des classes Java génériques si je le faisais avec un stylo et du papier.

Autant que je sache, il n’ya pas de support spécifique pour cela dans UML, le mieux est peut-être d’utiliser un stéréotype comme <<generic>>. Mais sur papier avec un stylo, rien de plus simple que d’écrire MYType<T> :-)

Deuxièmement, quels outils uml supportent les classes/interfaces génériques. 

Les stéréotypes sont pris en charge par tous les outils UML que j'ai vus jusqu'à présent. Bien entendu, le niveau de soutien peut différer. Cependant, comme je n’utilise pratiquement pas d’outils UML, mis à part les serviettes de table :-), je n’ai pas beaucoup de bases de comparaison ici.

3
Péter Török

Je cherche vraiment deux choses: premièrement, comment modéliser des classes Java génériques si je le faisais avec un stylo et du papier.

Le livre de Craig Larman, Application de UML et de Patterns 3e, contient des diapositives d'instructeur avec les figures du livre. Ce qui suit est tiré de la figure 15.5:

 enter image description here

Deuxièmement, quels outils uml supportent les classes/interfaces génériques.

J'aime PlantUML, qui va produira l'image suivante de

skinparam style strictuml
participant sales as "sales:\nArrayList<Sale>"

 enter image description here

Pour les diagrammes de classes, il produit

skinparam style strictuml
hide empty members
class "ArrayList<Sale>" as S
class Store {
Store()
}
Store "1" -> "1" S : "            sales  "

 enter image description here

2
Fuhrmanator

Dans Netbeans L'objet à utiliser s'appelle "Classificateur de dérivation". C'est l'objet à utiliser pour MyGeneric dans Answer de Vitalii Fedorenko

0
Dennis Ahaus

La première est de savoir comment modéliser des classes Java génériques si je le faisais avec un stylo et du papier.

Il s’agit d’une flèche de généralisation; la classe de base, si elle est abstraite, doit être écrite en italique. Peut également être marqué avec un stéréotype.

Deuxièmement, quels outils uml supportent les classes/interfaces génériques.

Utilisez http://staruml.io/ . Outil vraiment sympa, vous pouvez gérer tous les diagrammes de projet en un seul endroit. Dans le coin supérieur droit, il y a une arborescence objet/diagramme, vous pouvez donc utiliser les mêmes classes (autres objets) dans différents diagrammes.

0
Vayrex