đ ïž Diagrammes de classe UML : structure interne dâune classe
Survol et attentes
En commençant Ă concevoir nos programmes en termes dâobjets, câest souvent plus facile et naturel de nommer les objets, leurs informations et leurs comportements principaux bien avant de commencer Ă Ă©crire le code pour implĂ©menter lâidĂ©e. Parfois on a aucune idĂ©e quel code Ă©crire, mais on sait ce quâon veut que le programme fasse.
Les diagrammes de classe UML sont utiles Ă ce stade de planification.
En bref
Un diagramme de classe UML dĂ©crit avant tout la structure interne dâune classe :
- la visibilité, le type et le nom de chaque attribut
- la visibilité, le type de retour, le nom et les types de paramÚtres des méthodes
Exemple
Prenons une classe qui applique le concept dâencapsulation, la classe Square.
On peut faire le diagramme de classe au format texte comme ceci :
class Square
------------
-double side
-double area
-double perimeter
-----------------
+void setSide(double)
+double getSide()
+double getArea()
+double getPerimeter()
-void calculateArea()
-void calculatePerimeter()
âŠou on peut utiliser un langage spĂ©cialisĂ© pour les diagrammes UML, comme PlantUML :
@startuml Square
class Square {
-double side
-double area
-double perimeter
+void setSide(double)
+double getSide()
+double getArea()
+double getPerimeter()
-void calculateArea()
-void calculatePerimeter()
}
@enduml
Les avantages de la 2e option sont que :
- le code peut générer une image équivalente
- on peut spĂ©cifier des relations entre plusieurs classes (ce qui est le sujet dâune future leçon)
Voici dâailleurs lâimage gĂ©nĂ©rĂ©e avec le code prĂ©cĂ©dent :
Important
- Site dâĂ©dition et de visualisation de diagrammes UML : https://www.planttext.com/
- Extension VS Code :
jebbs.plantuml
Objectifs dâapprentissage
Ă la fin de cette leçon vous devrez ĂȘtre en mesure de :
- Produire un diagramme de classe UML au format texte ou au format PlantUML incluant la visibilité des membres de la classe.
- Utiliser la vue âOutlineâ de votre environnement de dĂ©veloppement intĂ©grĂ© (p. ex. VS Code, Eclipse) pour comparer le contenu actuel de la classe avec son diagramme UML.
CritĂšres de succĂšs
- Je sais quel symbole utiliser pour indiquer un membre privé ou public.
- Jâinclus toutes les informations requises (visibilitĂ©, nom, types) pour chaque membre de la classe.