le cours pratique le cours pratique 1- le diagramme de classes ________________

le cours pratique le cours pratique 1- le diagramme de classes ____________________________________________________________________________________ ____________ I. Introduction: Q1: Définissez le diagramme de classes. Le diagramme de classes est un diagramme statique de de la modélisation objet UML, il permet de montrer la structure interne d'un système en modélisant les concepts du domaine d'application. En fait, le diagramme de classes décortique le système en plusieurs classes, Une classe est une description formelle d'un ensemble d'objets qui ont une même sémantique et caractéristiques communes. Chaque classe possède un nom, un identifiant (une clé) des propriétés (des attributs et des relations) et des opérations (des méthodes) et reliée à d'autres classes par des relations d'association, de généralisation et/ou de dépendance. le diagramme de classes est le diagramme le plus important de la modélisation objet, il est le seul obligatoire lors d'une telle modélisation. II. Les classes: II.1. classe: Q2: Définissez la notion de classe et celle d'une instance de classe. illustrez par un exemple. Une classe est une représentation formelle d'un ensemble d'objet qui ont une même sémantique et de caractéristiques communes. Un objet est une instance d’une classe. C’est une entité discrète dotée d’une identité, d’un état et d’un comportement que l’on peut invoquer. Si l’on considère que Homme (au sens être humain) est un concept abstrait, on peut dire que la personne Myriam est une instance de Homme. Si Homme était une classe, Myriam en serait une instance : un objet. Q3: Qu'est ce que les caractéristique d'une classe? Une classe définit plusieurs objets dotés de caractéristiques communes. Les caractéristiques d’un objet permettent de spécifier son état et son comportement: État d’un objet : Ce sont les attributs et les terminaisons d’associations, tous deux réunis sous le terme de propriétés, qui décrivent l’état d’un objet. Les attributs sont utilisés pour des valeurs de données pures, dépourvues d’identité, telles que les nombres et les chaînes de caractères. Comportement d’un objet : Les opérations ou les méthodes décrivent les éléments individuels d’un comportement que l’on peut invoquer. Ce sont des fonctions qui peuvent prendre des valeurs en entrée et modifier les attributs ou produire des résultats. Les attributs, les terminaisons d’association et les méthodes constituent donc les caractéristiques d’une classe (et de ses instances). Q4: Comment représenter graphiquement une classe? Une classe est un classeur. Elle est représentée par un rectangle divisé en trois à cinq compartiments: Représentation graphique d'une classe Q5: Quelle est la syntaxe de base de la déclaration du nom d'une classe? Expliquez. – Méta-langage des syntaxes – [ ] :ce qui est à l’intérieur est optionnel ; < > :ce qui est à l’intérieur est plus ou moins libre ; par exemple, la syntaxe de déclaration d’une variable comme compteur : int est <nom_variable> : <type> ; ’ ’ :les cotes sont utiles quand on veut utiliser un méta-caractère comme un caractère ; par exemple, pour désigner un crochet ([) il faut écrire ’[’ car [ est un méta-caractère ayant une signification spéciale ; ... :permet de désigner une suite de séquence de longueur non définie. Explications: Q5.1: Qu'est ce q'un paquetage? Un paquetage est un regroupement d’éléments de modèle et de diagrammes. Il permet ainsi d’organiser des éléments de modélisation en groupes. Il peut contenir tout type d’élément de modèle : des classes, des cas d’utilisation, des interfaces, des diagrammes, … et même des paquetages imbriqués (décomposition hiérarchique). la déclaration du nom d'une classe défini "le chemin d’accès" à une classe en spécifiant les paquetage dont cette classe est contenu. Q5.2: Que signifie le mot clé "abstract" dans ce contexte? Lorsque'on ajoute le mot-clef abstract à la déclaration du nom de cette classe; cela signifie que la classe en question est une classe abstraite. Une classe est dite abstraite lorsqu’elle définit au moins une méthode abstraite ou lorsqu’une classe parent contient une méthode abstraite non encore réalisée. Une méthode est dite abstraite lorsqu’on connaît son entête mais pas la manière dont elle peut être réalisée. Q5.3: [QCM] le champs <auteur> et <date> sont respectivement utilisés pour : a. Indiquer le nom de l'auteur de la modélisation et la date de création. b. Indiquer le nom du concepteur et la date de mise à jour. c. Indiquer le nom de l'auteur de la modélisation et la date de la dernière mise à jour. le choix correcte est c: le champs <auteur> et <date> sont utilisés pour indiquer le nom de l'auteur de la classe et la date de la dernière mise à jour. Q6: Quand une classe est dite interface? Une interface est une classe abstraite pure qui ne comporte que des méthodes abstraites. Graphiquement, on ajoute un stéréotype <<interface>> devant le nom de la classe. Q7: Qu'est ce qu'une classe active? Une classe est passive par défaut, elle sauvegarde les données et offre des services aux autres. Une classe active initie et contrôle le flux d’activités. Graphiquement, une classe active est représentée comme une classe standard dont les lignes verticales du cadre, sur les côtés droit et gauche, sont doublées. II.2. attribut: Q8: Quelle est la syntaxe de base de la déclaration d'attribut d'une classe? Expliquez. Explication: Q8.1: Donnez la définition de la notion de visibilité et précisez les différents niveaux de visibilité prédéfinis. La visibilité déclare la possibilité pour un élément de modélisation de référencer un élément qui se trouve dans un espace de noms différents de celui de l’élément qui établit la référence.Il existe quatre visibilités prédéfinies: Q8.2: Quel mécanisme en UML permet de définir des niveaux de visibilité? C’est l'encapsulation qui permet de définir des niveaux de visibilité des éléments d’un conteneur. L ’encapsulation est un mécanisme consistant à rassembler les données et les méthodes au sein d’une structure en cachant l’implémentation de l’objet, c’est-à-dire en empêchant l’accès aux données par un autre moyen que les services proposés. Ces services accessibles (offerts) aux utilisateurs de l’objet définissent ce que l’on appel l’interface de l’objet (sa vue externe). Q8.3: Qu'est ce qu'un attribut dérivé? Expliquez par un exemple. Les attributs dérivés peuvent être calculés à partir d’autres attributs et de formules de calcul. Les attributs dérivés sont symbolisés par l’ajout d’un « / » devant leur nom. Explication: Q8.3.1:Une personne est caractérisée par son nom, son prénom, son sexe et son âge. Donnez une représentation UML de la classe Personne . L 'attribut âge est un attribut qui change de valeur au fil du temps pour un utilisateur précis, donc cet attribut ne peut être stocké comme un attribut normal, il doit donc être calculé à partir de la date de naissance. l'attribut âge est un attribut dérivé qui est calculé à partir d'autre attribut (dateNaissance) et d'une formule de calcul ( date actuelle - date de naissance ). Q8.4: Qu'est ce qu'un attribut de classe? Expliquez par un exemple. Un attribut de classe (static en Java ou en C++) est un attribut de la classe qui garde une valeur unique et partagée par toutes les instances de la classe. Les instances ont accès à cet attribut mais n’en possèdent pas une copie. Un attribut de classe n’est donc pas une propriété d’une instance mais une propriété de la classe et l’accès à cet attribut ne nécessite pas l’existence d’une instance. Graphiquement, un attribut de classe est souligné. Q8.4.1: En plus des informations fournies précédemment, Une personne a un salaire qui est représenté par un nombre réel. Pour calculer les charges globales, on applique un coefficient fixe de 20% sur les salaires. Enrichissez la représentation précédente pour prendre en compte ces nouveaux éléments. Q8.5: Quelles sont les valeurs possibles pour un type d'attribut? Est-ce qu'un attribut peut avoir comme type une classe abstraite? Le type d'un attribut (<type>) peut être un nom de classe, un nom d’interface ou un type de donné prédéfini (Integer, String, Float...). Une classe abstraite ne peut être instanciée. Q8.6: Donnez des exemples de multiplicité. exactement un : 1 ou 1..1 plusieurs : * ou 0..* au moins un : 1..* de un à six : 1..6 II.3. méthode: Q9: Quelle est la syntaxe de base de la déclaration de méthode d'une classe? Expliquez. Explication: Q9.1: Quel est la syntaxe de base de la déclaration de paramètre d'une méthode? Expliquez. Q9.2: Quelles sont les valeurs que peut prendre le champs <direction>? Q10: Qu'est ce qu'une méthode de classe ? Une méthode de classe ne peut manipuler que des attributs de classe et ses propres paramètres, elle est soulignée graphiquement.Cette méthode n’as pas accès aux attributs de la classes. Q11: Dans une classe, une opération peut-elle apparaître plusieurs fois? si oui, cela est valable sous quelle condition? et que peut on dire de cette opération? Dans une classe, une opération (même nom et même types de paramètres) doit être unique. Quand le nom d’une opération apparaît plusieurs fois avec des paramètres différents, on dit que l’opération est surchargée. En revanche, il est impossible que deux opérations ne se distinguent que par leur valeur retournée. Résumé des syntaxes: Exercice d'application: Construction de la classe Personne Une personne est caractérisée par son nom, son prénom, son sexe uploads/s3/ le-cours-pratique-1-le-diagramme-de-classes.pdf

  • 16
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager