Examen de Programmation Orientée Objet
IUP 3
Janvier 2000
On vous propose de réaliser un éditeur de diagrammes dont la spécification vous
est donnée par le texte suivant :
On appelle diagramme une collection de boîtes et liens. Un lien est une
relation entre deux boîtes. Chaque lien est constitué de segments horizontaux
ou verticaux reliés par un point de jonction. L'édition d'un diagramme doit
permettre la création, destruction, modification des boîtes et liens. Pour
cela on doit disposer d'une sélection. Celle-ci est constituée d'un ensemble
de boîtes et liens choisis par l'utilisateur. La sélection doit permettre la
réalisation d'opération de couper/coller. Il doit être aussi possible de
modifier interactivement les caractéristiques géométriques des boîtes et
liens. De plus à chaque lien est associé un texte court, et à chaque boîte un
ensemble non vide de textes courts. Un exemple de diagramme est représenté
schématiquement dans la figure suivante.
Figure 1:
Un exemple de diagramme.
![\includegraphics[width=5cm]{diagramme.eps}](img1.png) |
Répondre aux questions suivantes :
- identifiez les objets et classes pertinents du problème en justifiant
vos choix.
- identifiez les attributs pour chacun des objets et classes.
- identifiez les méthodes pour chacun des objets et classes.
- si c'est possible et intéressant réalisez des abstractions.
- identifiez les relations entre les différentes objets et classes. Pour
cela aidez vous d'un schéma à la UML.
- écrire le squelette Java des différentes classes/interfaces en
choisissant soigneusement les types.
- décrire symboliquement (par exemple en utilisant un diagramme temporel)
une opération de copier/coller dans l'exemple de la figure précédente :
sélection de la Boite1 et du lien1, copier puis coller sur la Boite 3. Il n'est pas demandé de décrire les opérations physiques réalisées
(déplacement de souris ou autre) mais simplement d'exhiber l'ordonnancement
des interactions entre objets.
- identifiez les points qui vous semblent importants dans un tel logiciel
et qui ont été oubliés.
Jean-Baptiste Yunès