QCM : Maîtrise des relations UML en PHP - Chap 3 — 11 questions

Questions et réponses du QCM

1. Qu'est-ce qu'un diagramme de classes UML ?

Un outil de modélisation graphique représentant la structure d’un système orienté objet
Une représentation textuelle des relations entre classes dans un code source
Un document listant toutes les classes et méthodes d’un logiciel
Un diagramme qui montre le flux d'exécution d’un programme

Un outil de modélisation graphique représentant la structure d’un système orienté objet

Explication

Le diagramme de classes UML est un outil de modélisation graphique qui permet de représenter la structure d’un système orienté objet, en illustrant classes, attributs, méthodes et relations, facilitant la conception avant l’implémentation.

2. Quelle est la traduction en PHP du symbole UML '#' (protected) utilisé pour la visibilité d'une propriété ou d'une méthode ?

private
internal
protected
public

protected

Explication

Le symbole UML '#' indique une visibilité 'protected'. En PHP, cela se traduit par le mot-clé 'protected'.

3. Quel est le rôle principal de la visibilité UML (+, -, #) dans la modélisation orientée objet ?

Déterminer la position des classes dans le diagramme
Spécifier le niveau d'accessibilité des attributs et méthodes
Indiquer la fréquence d'utilisation des méthodes
Définir la couleur des classes dans le diagramme UML

Spécifier le niveau d'accessibilité des attributs et méthodes

Explication

Les symboles de visibilité UML (+, -, #) indiquent respectivement public, private et protected, ce qui détermine le niveau d'accessibilité des attributs et méthodes. Leur rôle principal est donc de spécifier le niveau d'accessibilité, garantissant la sécurité et l'encapsulation dans la conception orientée objet.

4. Quand la relation de navigabilité entre classes UML a-t-elle été principalement clarifiée et intégrée dans la pratique de modélisation et de traduction en code ?

Au début des années 2000, avec l'essor des outils UML modernes
Lors de la standardisation initiale de UML en 1997, avec UML 1.0
Après la publication de la norme UML 2.0 en 2005
Avec l'introduction de UML 3.0 en 2010

Lors de la standardisation initiale de UML en 1997, avec UML 1.0

Explication

La relation de navigabilité entre classes UML a été introduite et clarifiée dès UML 1.0 en 1997. Bien que la norme ait évolué, c'est à partir de cette version que la notion a été formellement intégrée et utilisée dans la pratique, notamment pour la traduction en code PHP. Les autres dates correspondent à des évolutions ou à des versions ultérieures, mais la clarification initiale date de 1997.

5. En quoi la multiplicité UML 1 et 0..1 se ressemble-t-elle dans leur traduction en PHP ?

Les deux sont traduits par des propriétés de type tableau dans PHP.
Les deux indiquent une relation obligatoire avec une autre classe.
Les deux impliquent l'utilisation d'une collection pour représenter la relation.
Les deux nécessitent une référence simple dans le code PHP.

Les deux nécessitent une référence simple dans le code PHP.

Explication

La multiplicité UML 1 et 0..1 se ressemblent dans leur traduction en PHP car toutes deux sont généralement représentées par une référence simple dans le code, c'est-à-dire une propriété qui ne contient qu'un seul objet, contrairement aux multiplicités multiples qui nécessitent une collection.

6. Qui a formulé ou proposé le concept de navigabilité dans UML ?

James Rumbaugh
Grady Booch
Ivar Jacobson
Booch, Rumbaugh et Jacobson

Booch, Rumbaugh et Jacobson

Explication

Le concept de navigabilité dans UML, comme d'autres éléments de la modélisation orientée objet, a été développé par les créateurs de UML, notamment Grady Booch, James Rumbaugh et Ivar Jacobson, qui ont collaboré à la standardisation de UML.

7. Quelle est la cause principale pour laquelle la multiplicité UML influence la structure de la traduction en PHP d'une relation entre classes ?

Le type de relation (association ou héritage) qui détermine si une relation doit être traduite en référence simple ou collection en PHP.
La visibilité des attributs dans UML, qui détermine si une propriété doit être une référence ou une collection en PHP.
La multiplicité dans UML, qui indique combien d'objets peuvent être liés, influençant la décision d'utiliser une référence simple ou une collection en PHP.
La navigabilité dans UML, qui détermine si une classe doit contenir une référence ou une collection dans le code PHP.

La multiplicité dans UML, qui indique combien d'objets peuvent être liés, influençant la décision d'utiliser une référence simple ou une collection en PHP.

Explication

La multiplicité UML indique combien d'objets peuvent être liés dans une relation. Selon cette multiplicité, on choisit en PHP d'utiliser une référence simple (pour 1 ou 0..1) ou une collection (pour 0..*, 1..*), ce qui explique que la multiplicité est la cause principale de cette influence dans la traduction.

8. Comment doit-on appliquer la cohérence relationnelle dans une relation bidirectionnelle entre deux classes en PHP ?

En mettant à jour uniquement la référence dans la classe qui modifie la relation, sans toucher l'autre côté.
En ne gérant pas la relation, car la cohérence est assurée par le système de gestion de base de données.
En utilisant une méthode dans chaque classe pour ajouter ou supprimer la relation, qui met à jour simultanément les deux objets.
En laissant la relation se gérer automatiquement par le langage PHP, sans intervention spécifique.

En utilisant une méthode dans chaque classe pour ajouter ou supprimer la relation, qui met à jour simultanément les deux objets.

Explication

La cohérence relationnelle dans une relation bidirectionnelle nécessite que chaque modification de la relation soit reflétée dans les deux objets liés. Cela se réalise en utilisant une méthode dans chaque classe pour ajouter ou supprimer la relation, qui synchronise mutuellement les références. Ainsi, si un livre est associé à un auteur, cette méthode garantit que l'auteur référence aussi ce livre, maintenant la cohérence du modèle.

9. Quelle est la caractéristique principale de la modélisation UML avant le codage dans une démarche de conception orientée objet ?

Elle remplace complètement la phase de développement en codant directement à partir du diagramme
Elle ne concerne que la représentation graphique sans influence sur la traduction en code
Elle sert de support visuel pour représenter la structure du système avant l'implémentation
Elle permet de générer automatiquement le code PHP sans étape intermédiaire

Elle sert de support visuel pour représenter la structure du système avant l'implémentation

Explication

La modélisation UML avant le codage sert principalement de support visuel pour représenter la structure du système, notamment à travers le diagramme de classes, facilitant la conception et la traduction cohérente en code PHP.

10. Qu'est-ce qu'une collection en PHP dans le contexte de l'utilisation des relations UML ?

Une variable PHP qui stocke une seule instance d'une classe liée dans une relation un-à-un
Un fichier contenant plusieurs classes PHP regroupées pour une meilleure organisation
Une structure permettant de stocker plusieurs objets liés dans une relation multiple, souvent sous forme de tableau ou d'objet Collection
Une méthode PHP permettant de parcourir plusieurs objets liés dans une relation

Une structure permettant de stocker plusieurs objets liés dans une relation multiple, souvent sous forme de tableau ou d'objet Collection

Explication

Une collection en PHP est une structure permettant de regrouper plusieurs objets liés dans une relation multiple, conformément à la lecture des multiplicités UML comme 0..* ou 1..*.

11. Quelle est la date précise associée à UML dans le contexte fourni ?

UML a été créée en 1995
UML a été standardisé en 2000
La date précise de UML n'est pas précisée dans le contexte
La date de UML est en 1985

La date précise de UML n'est pas précisée dans le contexte

Explication

Le contexte indique explicitement que la date de UML n'est pas précisée, donc la réponse correcte est que cette date n'est pas précisée dans le contenu.

Révisez avec les flashcards

Mémorisez les réponses avec 22 flashcards sur Maîtrise des relations UML en PHP - Chap 3.

UML — définition ?

Langage de modélisation visuelle standardisé.

Rôle du diagramme de classes ?

Représenter graphiquement classes, attributs, méthodes, relations.

Classe UML — structure ?

Rectangle en trois parties : nom, attributs, méthodes.

Voir les flashcards →

Approfondir avec la fiche

Consultez la fiche de révision complète sur Maîtrise des relations UML en PHP - Chap 3.

Voir la fiche →

Cours similaires

Crée tes propres QCM

Importe ton cours et l'IA génère des QCM avec corrections en 30 secondes.

Générateur de QCM