Le diagramme de classes représente une vue statique d'une application. Il représente les types d'objets résidant dans le système et les relations entre eux. Une classe est constituée de ses objets et peut également hériter d’autres classes. Un diagramme de classes est utilisé pour visualiser, décrire, documenter divers aspects du système, ainsi que pour construire du code logiciel exécutable.
Il montre les attributs, les classes, les fonctions et les relations pour donner un aperçu du système logiciel. Il constitue les noms de classe, les attributs et les fonctions dans un compartiment séparé qui facilite le développement de logiciels. Puisqu'il s'agit d'un ensemble de classes, d'interfaces, d'associations, de collaborations et de contraintes, on l'appelle un diagramme structurel.
Objectif des diagrammes de classes
L'objectif principal des diagrammes de classes est de créer une vue statique d'une application. C'est le seul diagramme largement utilisé pour la construction et il peut être mappé avec des langages orientés objet. C'est l'un des diagrammes UML les plus populaires. Voici l’objectif des diagrammes de classes ci-dessous :
- Il analyse et conçoit une vue statique d'une application.
- Il décrit les principales responsabilités d'un système.
- C'est une base pour les diagrammes de composants et de déploiement.
- Il intègre l’ingénierie directe et inverse.
Avantages des diagrammes de classes
- Il peut représenter le modèle objet pour des systèmes complexes.
- Il réduit le temps de maintenance en fournissant un aperçu de la façon dont une application est structurée avant le codage.
- Il fournit un schéma général d’une application pour une meilleure compréhension.
- Il représente un tableau détaillé en mettant en évidence le code souhaité, qui doit être programmé.
- C’est utile pour les parties prenantes et les développeurs.
Composants essentiels d'un diagramme de classes
Le diagramme de classes est composé de trois sections :
- Mettez en majuscule la lettre initiale du nom de la classe.
- Placez le nom de la classe au centre de la section supérieure.
- Un nom de classe doit être écrit en gras.
- Le nom de la classe abstraite doit être écrit en italique.
- Les attributs sont écrits avec ses facteurs de visibilité, qui sont public (+), privé (-), protégé (#) et package (~).
- L'accessibilité d'une classe d'attributs est illustrée par les facteurs de visibilité.
- Un nom significatif doit être attribué à l'attribut, qui expliquera son utilisation au sein de la classe.
Des relations
En UML, les relations sont de trois types :
Dans l’exemple suivant, Student_Name dépend de Student_Id.
Par exemple, le compte courant, le compte d'épargne et le compte de crédit sont la forme généralisée du compte bancaire.
Par exemple, un département est associé au collège.
Multiplicité: Il définit une plage spécifique d’instances d’attributs autorisées. Dans le cas où une plage n'est pas spécifiée, une est considérée comme une multiplicité par défaut.
qu'est-ce qu'une pile en Java
Par exemple, plusieurs patients sont admis dans un hôpital.
Agrégation: Une agrégation est un sous-ensemble d'association, qui représente une relation. C'est plus spécifique qu'une association. Il définit une relation partie-tout ou partie de. Dans ce type de relation, la classe enfant peut exister indépendamment de sa classe parent.
L'entreprise compte plusieurs salariés, et même si l'un d'entre eux démissionne, l'entreprise existe toujours.
Composition: La composition est un sous-ensemble de l'agrégation. Il représente la dépendance entre le parent et son enfant, ce qui signifie que si une partie est supprimée, l'autre partie est également supprimée. Cela représente une relation à part entière.
Un carnet de contacts se compose de plusieurs contacts, et si vous supprimez le carnet de contacts, tous les contacts seront perdus.
Cours abstraits
Dans la classe abstraite, aucun objet ne peut être une entité directe de la classe abstraite. La classe abstraite ne peut ni être déclarée ni instanciée. Il est utilisé pour trouver les fonctionnalités à travers les classes. La notation de la classe abstraite est similaire à celle de la classe ; la seule différence est que le nom de la classe est écrit en italique. Puisqu’elle n’implique aucune implémentation pour une fonction donnée, il est préférable d’utiliser la classe abstraite avec plusieurs objets.
Supposons que nous ayons une classe abstraite nommée déplacement avec une méthode déclarée à l'intérieur, et cette méthode sera appelée comme un conduire () . Désormais, cette méthode de classe abstraite peut être implémentée par n'importe quel objet, par exemple une voiture, un vélo, un scooter, un cycle, etc.
Comment dessiner un diagramme de classes ?
Le diagramme de classes est le plus largement utilisé pour construire des applications logicielles. Il représente non seulement une vue statique du système mais également tous les aspects majeurs d'une application. Une collection de diagrammes de classes dans son ensemble représente un système.
Certains points clés à garder à l’esprit lors de l’élaboration d’un diagramme de classes sont indiqués ci-dessous :
- Pour décrire un aspect complet du système, il est suggéré de donner un nom significatif au diagramme de classes.
- Les objets et leurs relations doivent être reconnus à l'avance.
- Les attributs et méthodes (responsabilités) de chaque classe doivent être connus.
- Un nombre minimum de propriétés souhaitées doit être spécifié, car un plus grand nombre de propriétés indésirables conduira à un diagramme complexe.
- Les notes peuvent être utilisées selon les besoins du développeur pour décrire les aspects d'un diagramme.
- Les schémas doivent être redessinés et retravaillés autant de fois pour le rendre correct avant de produire sa version finale.
Exemple de diagramme de classes
Un diagramme de classes décrivant le système de commande client est présenté ci-dessous.
Utilisation des diagrammes de classes
Le diagramme de classes est utilisé pour représenter une vue statique du système. Il joue un rôle essentiel dans l’établissement des schémas de composants et de déploiement. Il aide à construire un code exécutable pour effectuer une ingénierie avant et arrière pour n'importe quel système, ou nous pouvons dire qu'il est principalement utilisé pour la construction. Il représente le mappage avec les langages orientés objet que sont C++, Java, etc. Les diagrammes de classes peuvent être utilisés aux fins suivantes :
- Décrire la vue statique d'un système.
- Pour afficher la collaboration entre chaque instance dans la vue statique.
- Décrire les fonctionnalités exécutées par le système.
- Construire l'application logicielle à l'aide de langages orientés objet.