Forum des développeurs  

Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé.
Précédent   Forum des développeurs > Général Développement > Conception > Modélisation

Modélisation Forum d'entraide pour les diagrammes UML et les MCD

Réponse
 
Outils de la discussion
Vieux 30/06/2008, 00h34   #1 (permalink)
Débutant(e)
 
Date d'inscription: octobre 2007
Messages: 269
Par défaut le rôle des classes

bonsoir à tout le monde je voudrais savoir si chaque classe doit avoir un seul rôle dans une bonne conception
CAD chaque classe à une seule tâche ou pas

merci
adel.87 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 01/07/2008, 15h37   #2 (permalink)
Modérateur
 
Avatar de hed62
 
Date d'inscription: juillet 2007
Localisation: Lille
Âge: 24
Messages: 1 956
Envoyer un message via MSN à hed62 Envoyer un message via Yahoo à hed62
Par défaut

Théoriquement oui, une classe ne doit avoir qu'une responsabilité. Maintenant, le plus difficile est de déterminer le grain des responsabilités.

Est ce que "Gérer les contrats" est une responsabilité ? A mon avis, plusieurs. Est ce que "mémoriser la date de souscription" en est une ? Pas en tant que telle, car le grain est trop fin.
__________________
Je n'accepte pas les demandes de mise en relation MSN/yahoo sans motif.
------------------------------------------------------------------------
Si , ni , ne peuvent vous aider, mais nous oui, pensez à un pti et au !
Merci de vous relire
____________________________________________________________________________________
Recherche joueurs de "Magic" sur Lille et environs.
Donner plutôt que jeter. Solutions d'hébergement
hed62 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 11/07/2008, 13h53   #3 (permalink)
Membre Confirmé
 
Avatar de Bill54
 
Date d'inscription: janvier 2006
Messages: 249
Par défaut

Je ne suis pas d'accord.

Dire qu'une classe ne doit gérer qu'un "rôle" va à l'encontre du polymorphisme
Bill54 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 12/07/2008, 09h54   #4 (permalink)
Rédacteur/Modérateur
 
Avatar de bruno_pages
 
Date d'inscription: juin 2005
Localisation: Morangis (91)
Âge: 48
Messages: 1 590
Par défaut

Citation:
Envoyé par Bill54 Voir le message
Dire qu'une classe ne doit gérer qu'un "rôle" va à l'encontre du polymorphisme
justement !

une classe polymorphe est une classe fourre tout, signe d'une mauvaise analyse/conception
__________________
Bruno Pagès, auteur de Bouml
mes tutoriels
bruno_pages est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 15/07/2008, 13h50   #5 (permalink)
Rédacteur
 
Date d'inscription: juin 2005
Localisation: Lyon
Âge: 30
Messages: 513
Par défaut

Citation:
Envoyé par adel.87 Voir le message
bonsoir à tout le monde je voudrais savoir si chaque classe doit avoir un seul rôle dans une bonne conception
CAD chaque classe à une seule tâche ou pas
Pour moi, la question ne se pose pas en POO.
Si tu te poses cette question, c'est que tu raisonnes en termes fonctionnels. Que tu cherches à faire un objet "Gérer les contrats", donc un module fonctionnel et non pas un objet au sens POO du terme.
Pour moi, on définit avant tout des objets qui représent des entités physiques précises et concrêtes. On définit les opérations unitaires qui peuvent s'effectuer sur chaque entité. De cette façon, ton objet est autonome, indépendant d'un contexte précis et donc parfaitement réutilisable.
Ensuite, tu réfléchis un peu pour abstraire, organiser les choses, faire des classes abstraites...
Enfin tu connecte tes objets entre eux et les fonctionnalités (les modules fonctionnels) découlent de l'interaction des objets entre-eux...

Dès lors, un objet peut très bien contribuer à plusieurs tâches, mais chaque tâche est un résultat et pas le "rôle" de l'objet.

Il ne faut pas oublier que la grande force de l'objet, c'est sa faculté à être réutilisé dans un autre contexte, pour faire autre chose.
Si ta classe n'est pas réutilisable, tu passes à côté de l'intérêt de l'objet, donc à mon sens c'est une erreur de conception.
Si ta classe est parfaitement réutilisable, tu connais son usage à un instant t, mais plus tard, elle pourra très bien jouer un autre rôle.
Franck SORIANO est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 08/08/2008, 15h28   #6 (permalink)
Expert Confirmé Sénior
 
Date d'inscription: juin 2003
Localisation: Essonne
Âge: 28
Messages: 3 075
Par défaut

Citation:
Envoyé par adel.87 Voir le message
bonsoir à tout le monde je voudrais savoir si chaque classe doit avoir un seul rôle dans une bonne conception
CAD chaque classe à une seule tâche ou pas

merci

Pour les rôles cela me paraît difficile dans la mesure tu peux avoir avoir un class qui soit associé à plusieurs autres donc qui peut avoir un rôle différent dans chaque cas.

Pour la tâche en principe une class devrait se concentrer sur sa spécialité donc en avoir plusieurs paraît un peu foireux...
__________________
En grève.
hegros est déconnecté   Envoyer un message privé Réponse avec citation
NEWS CONCEPTIONTUTORIELS CONCEPTIONF.A.Qs CONCEPTIONUMLMERISELIVRES CONCEPTION

Réponse

Précédent   Forum des développeurs > Général Développement > Conception > Modélisation



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non
Navigation rapide