|
|
6.9 Traduction des attributs
dérivés
- Attribut dérivé opération ou attribut selon qu’il est
ou non recalculé à chaque fois que sa valeur est lue (p.ex. dans un
accesseur)
- Par exemple, deux possibilités pour l’attribut
nbBulletinsPour de la classe Choix
- Définition d’un attribut dans la
classe Choix
Dans l’opération voter(), incrémentation
si le vote est « pour »
Lorsque demandé, fourniture de la valeur de l’attribut
Mais, attention à la suppression d’un bulletin !
- Définition d’une opération
getNbBulletinsPour()
L’opération getNbBulletinsPour parcourt
tous les bulletins pour le calcul
précédent suivant
Un attribut dérivé peut être traduit soit en un attribut et
une opération qui retourne la valeur de l’attribut à chaque appel, soit
en une opération qui calcule la valeur lors de chaque appel. Cette décision est
faite lors de la conception : c’est un détail inutile lors de
l’analyse et c’est une décision importante pour la mise en
œuvre.
D. Conan, C. Taconet, C. Bac,
Télécom SudParis, CSC 4002, Octobre 2015
|
|