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 :

Pourquoi ne définit on pas d’identifiant dans une classe UML?


Sujet :

Diagrammes de Classes

  1. #1
    Membre régulier
    Femme Profil pro
    Enseignant
    Inscrit en
    Juillet 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2012
    Messages : 73
    Points : 71
    Points
    71
    Par défaut Pourquoi ne définit on pas d’identifiant dans une classe UML?
    Bonjour à tous,
    J’ai beaucoup cherché mais je n’ai pas trouvé de réponse satisfaisante à ma question.
    Je sais qu’on peut modifier et supprimer un objet dans un SGBDO ex DB4O sans un identifiant on fait une recherche avec tout ses attributs. On peut aussi enregistrer plusieurs fois le même objet on n'aura pas de message d'erreur.
    Un identifiant ça sert à quoi en réalité ? Ça ne permet pas de reconnaitre une personne c’est ça photo et ses empreintes qui le font, ça ne permet pas de différencier réellement deux enregistrements car ces enregistrements peuvent avoir les mêmes valeurs et ne différer que dans l’identifiant or pourquoi ne pas sauvegarder deux fois la ligne sans ajouter cet attribut mais c’est utile quand il y a une relation pour savoir quoi appartient à quoi grâce au concept de la clé étrangère. Or pourquoi les gents d’UML ont ils supprimer l’identifiant dans les classes, j’aimerais connaitre l’aspect philosophique dans le concept de l’objet qui dirait oui c’est logique on n’a pas besoin d’identifiant.
    Merci d’avance pour votre participation.

  2. #2
    Membre habitué Avatar de tonton16
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2003
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 90
    Points : 185
    Points
    185
    Par défaut
    Bonjour,

    Lorsqu'on fait un diagramme de classes, on va mettre des attributs dans la classe et l'ensemble de ces attribut représente l'état de cette classe.
    Lorsqu'on instancie des objets à partir de cette classe, chaque objet créé aura ses attributs peuplés avec des informations (qui peuvent être identiques entre plusieurs objets), par contre, ce qui va réellement distinguer 2 objets, ce sont les adresses mémoires de chacun.
    C'est pour cela qu'on ne met pas d'identifiant technique dans une classe. Il est toutefois possible de mettre des identifiants métiers, mais il n'est pas recommandé de s'en servir comme future clé lors de la persistance en base de données (surtout si c'est une String).

    L'identifiant ressortira surtout lors de la persistance avec la création de clé auto-incrémentés (je parle là plutôt pour les SGBDR, ne connaissant pas vraiment les SGBDO).
    Si vous pensez que ma réponse est utile pour vous et pour les autres utilisateurs du forum, pensez à voter.

  3. #3
    Membre régulier
    Femme Profil pro
    Enseignant
    Inscrit en
    Juillet 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2012
    Messages : 73
    Points : 71
    Points
    71
    Par défaut
    Bonjour Tonton16,

    Si je comprends bien le diagramme de classe n’a pas de problème avec la duplication d’enregistrement puisque cela existe, deux objets peuvent avoir les mêmes propriétés, il n’a pas non plus de problème de référence (clés étrangère) donc pas besoin de clés.

    Ça veut dire maintenant que je peux crier haut et fort : si vous modéliser en UML et que vous allez implémenter en objet ne mettez pas d’identifiant à vos classes (ce n’est pas le cas de l’objet relationnel). En tout cas il le conseil dans la documentation de DB4O (un SGBD objet).

    Il ne me reste plus qu’une partie de votre réponse que n’ai pas bien compris, est ce que vous pouvez me la réexpliquer ?

    Il est toutefois possible de mettre des identifiants métiers, mais il n'est pas recommandé de s'en servir comme future clé lors de la persistance en base de données (surtout si c'est une String).
    Merci d’avance.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 05/11/2010, 21h29
  2. Réponses: 3
    Dernier message: 23/05/2009, 13h07
  3. Réponses: 4
    Dernier message: 09/06/2008, 16h32
  4. Caractères spéciaux à ne pas passer dans une form
    Par LE NEINDRE dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 02/03/2006, 12h39
  5. Réponses: 2
    Dernier message: 17/12/2005, 20h52

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