Bonjour,
Je souhaite appeler d'un objet, une méthode d'une classe 2. La classe 2 n'a pas besoin d'etre instanciée puisque ma méthode est une méthode static (je viens du Java).
Comment representé ca en UML ???
Merci pour votre réponse !
Bonjour,
Je souhaite appeler d'un objet, une méthode d'une classe 2. La classe 2 n'a pas besoin d'etre instanciée puisque ma méthode est une méthode static (je viens du Java).
Comment representé ca en UML ???
Merci pour votre réponse !
Bonjour
Pour faire un appel static dans un diagramme de séquence, il te suffit de faire un message normal, qui pointe vers classe2, mais en laissant la ligne de vie de ton "instance" en pointillés. Pour moi cela équivaut à appeler une méthode sur une instance inexistante, donc à la classe elle même.
Cela ne doit pas être la méilleure solution : regarde du côté des stéréotype des acteurs, tu auras peut être un <<static>>
bonjour,
je ne pense pas qu'il y ai de notation normée, par exemple le nom de l'opération ne sera sans doute pas souligné comme dans un diagramme de classe
peut être peux-tu jouer sur le nom de l'instance, en utilisant le nom de la classe elle-même (-> Toto:Toto) , ou en l'appelant 'none' / 'static' etc ...
Merci pour ta réponse...
Toutefois, je me pose deux questions.
1- les fleches pointilltées ne sont elles pas uniquement reservées aux valeurs de retour
2- etant donné que l'on travaille avec des objets (et non des classes non instanciés), peut etre est il illogique de travailler avec des elements statiques ?
Dont le titre est "Important : A lire avant de poser une question " ^^
Je n'ai pas parlé de flèche (horizontale) en pointillée, mais de ligne de vie (verticale) en pointillée : cela n'est pas la même chose !1- les fleches pointilltées ne sont elles pas uniquement reservées aux valeurs de retour
personnellement j'avais bien compris, mais comme on peut pas atteindre directement un ligne de vie avec Bouml (c.a.d. sans duration bar) ...
plus sérieusement même si tu atteins la ligne de vie, cette ligne de vie est bel et bien celle d'une instance, d'ou ma proposition de jouer au niveau de l'instance pour dire qu'elle n'en est pas 'vraiment' une
je n'avais pas essayé !comme on peut pas atteindre directement un ligne de vie avec Bouml (c.a.d. sans duration bar) ...
Hum.. Bien flou quand même cette histoire d'appel static... On n'oublierait pas un truc élémentaire dans cette affaire qui nous tirerait de là.. J'ai beau cherché je ne vois pas.
comme la fonction static n'a rien à voir avec le cycle de vie d'un objet et donc n'a pas vraiment de sens d'être présenté sur une ligne de vie d'une instance, ne serait-ce pas plutôt une opération primitive sur la ligne de vie de l'objet qui veut faire une requête ? Cette opération est l'appel à la fonction statique.
C'est juste une idée.
Bonjour,
Ta question revient à se poser la question suivante : est-ce que cela a fondamentalement un sens de représenter des classes statiques avec UML ? Il ne faut pas oublier qu'UML est là pour décrire des langages OO et non procéduriaux.
Dans un soucis de puralisme, je dirais que si ta méthode vaut le coup d'être décrite, autant faire de ta méthode une classe à part entière de type singleton dédiée à la mise en oeuvre de ta méthode.
Ce qui revient finalement à peu de choses près à une proposition faite par Bruno, de ne pas nommer ta classe dans le diagramme (représentation d'un singleton dans un SD).
Corsaire
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager