Comment indiquez-vous une classe ou une interface générique dans un diagramme de classes?
Je cherche vraiment deux choses:
Merci!
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:
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
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.
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:
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>"
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 "
Dans Netbeans L'objet à utiliser s'appelle "Classificateur de dérivation". C'est l'objet à utiliser pour MyGeneric dans Answer de Vitalii Fedorenko
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.