IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Diagrammes de Classes Discussion :

les methodes et les associations entre les classes


Sujet :

Diagrammes de Classes

  1. #1
    Membre du Club Avatar de zin_rbt
    Inscrit en
    Février 2007
    Messages
    68
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 68
    Points : 45
    Points
    45
    Par défaut les methodes et les associations entre les classes
    bonjour,

    dans un diagramme de classes (qui - bien entendu -présente l'aspect structurel du système), quand 2 classes sont associées ,est ce que peut dire que chacune des classes peut appeler les méthodes de l'autre en fonction de sa visibilité ou bien doit on impérativement passer par des interfaces ?

    Merci

  2. #2
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 534
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : ingénieur informaticien à la retraite
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 3 534
    Points : 6 723
    Points
    6 723
    Par défaut
    Bonjour,

    Vous mélangez plusieurs concepts.

    quand 2 classes sont associées ,est ce que peut dire que chacune des classes peut appeler les méthodes de l'autre
    Si vous parlez des associations / agrégations / compositions, celle-ci produisent des attributs permettant de mémoriser des instances de l'autre classe (de la classe elle même si les deux classes sont une seule et même classe). Le fait que vous appliquiez ou non des opérations sur ces instances n'a donc pas d'importance. Vous pouvez tout aussi bien appliquez des opérations sur des instances qui ne sont pas référencées pas ces relations.

    Si vous voulez simplement dire qu'une classe en utilise une autre (quelque soit la signification d'utiliser) vous pouvez l'indiquer via une dépendance (dependency)

    ou bien doit on impérativement passer par des interfaces
    Les interfaces permettent de découper une application en composants indépendants avec un découplage forts.

    Lorsqu'un composant expose son comportement via des interfaces cela lui permet de ne présenter que le minimum nécessaire en cachant son implémentation (c.a.d. les classes implémentant ce comportement). Ainsi toute modification interne ne remettant pas en cause le comportement visible de l'extérieur n'aura pas de conséquence sur les autres composants l'utilisant. La description complète d'un composant contient les interfaces qu'il expose/offre aux autres, mais aussi les interface qu'il utilise et qui sont offertes per d'autre composants.

    Bien évidemment les classes d'un même composant se connaissent et s'utilisent directement, sans passer par des interfaces.

    De la taille des composants dépendra la 'qualité' de votre découpage, ils ne doivent être ni trop petits ni trop grands.
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/03/2011, 11h36
  2. [MCD] Héritage, association entre les sous-types
    Par Sandro Munda dans le forum Schéma
    Réponses: 31
    Dernier message: 26/01/2011, 15h35
  3. Association entre deux classes (partager les methodes)
    Par shaiton dans le forum Débuter
    Réponses: 3
    Dernier message: 18/02/2009, 17h21
  4. Réponses: 7
    Dernier message: 17/06/2008, 18h12
  5. Association entre les table (débute)
    Par dydy77 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 14/06/2008, 15h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo