30/12/2015
Mod liser ses objets gr ce UML
% $
Accueil
Cours
Apprenez programmer en Java
Mod liser ses objets gr ce UML
Apprenez programmer en Java
2 < @ ?
Z
40 heures
& Difficile
Licence
8
-
MOD LISER SES OBJETS GR CE UML
Dans ce chapitre, nous allons d couvrir le principe de mod lisation d'objet. Le sigle UML signifie Unified Modeling
Language, que l'on peut traduire par langage de mod lisation unifi . Il ne s'agit pas d'un langage de
programmation, mais plut t d'une m thode de mod lisation. La m thode Merise , par exemple, en est une autre.
En fait, lorsque vous programmez en orient objet, il vous sera sans doute utile de pouvoir sch matiser vos classes,
leur hi rarchie, leurs d pendances, leur architecture, etc. L'id e est de pouvoir, d'un simple coup d'Sil, vous
repr senter le fonctionnement de votre logiciel : imaginez UML un peu comme une partition de musique pour le
musicien.
Le but de ce chapitre n'est pas de vous transformer en experts UML, mais de vous donner suffisamment de bases pour
mieux appr hender la mod lisation et ensuite bien cerner certains concepts de la POO.
Pr sentation d'UML
T
Je sais que vous tes des Z ros avertis en mati re de programmation, ainsi qu'en informatique en g n ral, mais
mettez-vous dans la peau d'une personne totalement d nu e de connaissances dans le domaine. Il fallait trouver un
langage commun aux commerciaux, aux responsables de projets informatiques et aux d veloppeurs, afin que tout ce
petit monde se comprenne. Avec UML, c'est le cas.
En fait, avec UML, vous pouvez mod liser toutes les tapes du d veloppement d'une application informatique, de sa
conception la mise en route, gr ce des diagrammes. Il est vrai que certains de ces diagrammes sont plus adapt s
pour les informaticiens, mais il en existe qui permettent de voir comment interagit l'application avec son contexte de
fonctionnement& Et dans ce genre de cas, il est indispensable de bien conna tre l'entreprise pour laquelle
l'application est pr vue. On recourt donc un mode de communication compr hensible par tous : UML.
https://openclassrooms.com/courses/apprenez a programmer en java/modeliser ses objets grace a uml
1/9
30/12/2015
Mod liser ses objets gr ce UML
Il existe bien s r des outils de mod lisation pour cr er de tels diagrammes. En ce qui me concerne, j'utilise argoUML. Il
a le m rite d' tre gratuit et crit en Java, donc multi-plates-formes.
Cependant, il en existe d'autres, comme :
boUML,
Together,
Poseidon,
Pyut
etc.
Avec ces outils, vous pouvez r aliser les diff rents diagrammes qu'UML vous propose :
le diagramme de use case (cas d'utilisation) permet de d terminer les diff rents cas d'utilisation d'un
programme informatique ;
le diagramme de classes ; c'est de celui-l que nous allons nous servir. Il permet de mod liser des classes ainsi
que les interactions entre elles ;
les diagrammes de s quences, eux, permettent de visualiser le d roulement d'une application dans un contexte
donn ;
Advertisement
et d'autres encore&
La figure suivante repr sente un exemple de diagramme de classes.
https://openclassrooms.com/courses/apprenez a programmer en java/modeliser ses objets grace a uml
2/9
30/12/2015
Mod liser ses objets gr ce UML
Exemple de diagramme de classes
Vous avez d remarquer qu'il repr sente les classes que nous avons rencontr es dans les chapitres pr c dents. Je ne
vous cache pas qu'il s'agit d'une version simplifi e. En effet, vous pouvez constater que je n'ai pas fait figurer les
m thodes d clar es public de la classe Object , ni celles des classes que nous avons cod es.
Je ne vais pas vous apprendre utiliser argoUML, mais plut t lire un diagramme. En effet, dans certains cas, il est
utile de mod liser les classes et l'interaction entre celles-ci, ne serait-ce que pour disposer de plus de recul sur son
travail. Une autre raison cela est que certains concepts de programmation sont plus faciles expliquer avec un
diagramme qu'avec de longs discours...
Mod liser ses objets
T
pr sent, nous allons apprendre lire un diagramme de classes. Vous avez devin qu'une classe est mod lis e sous la
forme repr sent e sur la figure suivante.
Voici une classe nomm e ObjetA qui a comme attributs :
Classe en UML
https://openclassrooms.com/courses/apprenez a programmer en java/modeliser ses objets grace a uml
3/9
30/12/2015
Mod liser ses objets gr ce UML
numero de type int ;
nom de type String ;
bool de type boolean .
Ses m thodes sont :
getNom() qui retourne une cha ne de caract res ;
setNom() qui ne renvoie rien ;
afficher() qui renvoie galement une cha ne de caract res.
La port e des attributs et des m thodes n'est pas repr sent e ici. Vous voyez, la mod lisation d'un objet est toute
simple et tr s compr hensible !
Maintenant, int ressons-nous aux interactions entre objets.
Mod liser les liens entre les objets
T
Vous allez voir : les interactions sont, elles aussi, tr s simples mod liser.
En fait, comme vous l'avez vu avec l'exemple, les interactions sont mod lis es par des fl ches de plusieurs sortes.
Nous aborderons ici celles dont nous pouvons nous servir dans l' tat actuel de nos connaissances (au fur et mesure
de la progression, d'autres fl ches appara tront).
Sur le diagramme repr sent la figure suivante, vous remarquez un deuxi me objet qui dispose, lui aussi, de
param tres. Ne vous y trompez pas, ObjetB poss de galement les attributs et les m thodes de la classe ObjetA .
D'apr s vous, pourquoi ? C'est parce que la fl che qui relie nos deux objets signifie extends . En gros, vous
pouvez lire ce diagramme comme suit : l' ObjetB h rite de l' ObjetA , ou encore ObjetB est un ObjetA .
https://openclassrooms.com/courses/apprenez a programmer en java/modeliser ses objets grace a uml
4/9
30/12/2015
Mod liser ses objets gr ce UML
Repr sentation de l'h ritage
Nous allons voir une autre fl che d'interaction. Je sais que nous n'avons pas encore rencontr ce cas de figure, mais il
est simple comprendre.
De la m me fa on que nous pouvons utiliser des objets de type String dans des classes que nous d veloppons,
nous pouvons aussi utiliser comme variable d'instance, ou de classe, un objet que nous avons cod . La figure suivante
mod lise ce cas.
Repr sentation de l'appartenance
Dans cet exemple simpliste, nous avons toujours notre h ritage entre un objet A et un objet B, mais dans ce cas,
l' ObjetA (et donc l' ObjetB ) poss de une variable de classe de type ObjetC , ainsi qu'une m thode dont le type
Advertisement
https://openclassrooms.com/courses/apprenez a programmer en java/modeliser ses objets grace a uml
5/9
30/12/2015
Mod liser ses objets gr ce UML
de retour est ObjetC (car la m thode retourne un ObjetC ). Vous pouvez lire ce diagramme comme suit :
l' ObjetA a un ObjetC (donc une seule instance d' ObjetC est pr sente dans ObjetA ).
Voici le code Java correspondant ce diagramme.
Fichier ObjetA.java
1
2
3
4
5
6
7
public class ObjetA{
protected ObjetC obj = new ObjetC();
public ObjetC getObject(){
return obj;
}
}
Fichier ObjetB.java
1
2
3
public class ObjetB extends ObjetA{
}
Fichier ObjetC.java
1
2
3
public class ObjetC{
}
Il reste une derni re fl che que nous pouvons mentionner, car elle ne diff re que l g rement de la premi re. Un
diagramme la mettant en Suvre est repr sent sur la figure suivante.
java
java
java
Repr sentation de la composition
Ce diagramme est identique au pr c dent, l'exception de l' ObjetD . Nous devons le lire comme ceci :
l' ObjetA est compos de plusieurs instances d' ObjetD . Vous pouvez d'ailleurs remarquer que la variable
d'instance correspondante est de type tableau&
https://openclassrooms.com/courses/apprenez a programmer en java/modeliser ses objets grace a uml
6/9
30/12/2015
Mod liser ses objets gr ce UML
Voici le code Java correspondant :
Fichier ObjetA.java
1
2
3
4
5
6
7
8
9
Advertisement
10
11
public class ObjetA{
protected ObjetC obj = new ObjetC();
protected ObjetD[] objD = new ObjetD[10];
public ObjetC getObject(){
return obj;
}
public ObjetD[] getObjectD(){
return objD;
}
}
Fichier ObjetB.java
1
2
3
public class ObjetB extends ObjetA{
}
Fichier ObjetC.java
1
2
3
public class ObjetC{
}
Fichier ObjetD.java
java
java
java
java
1
2
3
public class ObjetD{
}
Il est bien vident que ces classes ne font strictement rien. Je les ai utilis es titre d'exemple pour la
mod lisation.
Voil , c'en est fini pour le moment. Attendez-vous donc rencontrer des diagrammes dans les prochains chapitres !
UML vous permet de repr senter les liens entre vos classes.
Vous pouvez y mod liser leurs attributs et leurs m thodes.
Vous pouvez repr senter l'h ritage avec une fl che signifiant est un .
Vous pouvez repr senter l'appartenance avec une fl che signifiant a un .
Vous pouvez repr senter la composition avec une fl che signifiant est compos de .
9
J'ai termin ce chapitre et je passe au suivant
https://openclassrooms.com/courses/apprenez a programmer en java/modeliser ses objets grace a uml
7/9
30/12/2015
S
Mod liser ses objets gr ce UML
L'h ritage
Les packages
T
Se d sinscrire de ce cours
Comment a marche ?
S
Java Orient Objet
Advertisement
T
1. Votre premi re classe
2. L'h ritage
3. Mod liser ses objets gr ce UML
4. Les packages
5. Les classes abstraites et les interfaces
6. Les exceptions
7. Les num rations
8. Les collections d'objets
9. La g n ricit en Java
10. Les flux d'entr e/sortie
11. Java et la r flexivit
Activit : R alisez un garage
Quiz
Acc der au forum
Cr par
OpenClassrooms, 1 re plateforme
e-Education en Europe
$
https://openclassrooms.com/courses/apprenez a programmer en java/modeliser ses objets grace a uml
8/9
30/12/2015
Mod liser ses objets gr ce UML
L'auteur
Cyrille Herby
Sp cialiste en d veloppement Java et curieux insatiable dinformatique et de programmation web.
Actuellement auditeur en s curit .
D couvrez aussi ce cours en...
@ < @
Premium
Premium
eBook
Livre papier
OpenClassrooms
Professionnels
Participez
Qui sommes-nous ?
Affiliation
Cr er un cours
Fonctionnement de nos cours
Entreprises
CourseLab
Recrutement
Nous contacter
Suivez-nous
Le blog OpenClassrooms
Universit s et coles
Aider traduire
Conditions G n rales d'Utilisation
$ 6 ;
https://openclassrooms.com/courses/apprenez a programmer en java/modeliser ses objets grace a uml
9/9