2018_2019:s2:td:td_classe_code
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
2018_2019:s2:td:td_classe_code [2019/02/16 18:28] – [5) Relation Bidirectionnelle] blay | 2018_2019:s2:td:td_classe_code [2019/02/27 14:25] (current) – [Des modèles aux codes et vis-versa] blay | ||
---|---|---|---|
Line 5: | Line 5: | ||
**Objectifs :** | **Objectifs :** | ||
- Faire un lien direct entre la modélisation des classes et les codes correspondants. | - Faire un lien direct entre la modélisation des classes et les codes correspondants. | ||
- | + | <note important> | |
- | <note important> | + | Vous pouvez travailler les codes uniquement au niveau du papier |
- | Vous pouvez travailler les codes uniquement au niveau du papier. | + | |
Vous devez essentiellement comprendre les grands principes. | Vous devez essentiellement comprendre les grands principes. | ||
</ | </ | ||
+ | <alert type=" | ||
+ | TD de 4 h.\\ | ||
+ | Il n'y a pas de rendus associé à ce TD, cependant il doit faire partie du carnet de bord. | ||
+ | Donc notez bien les points qui vous semblent difficiles, les remarques qu'il vous semble important de diffuser, etc. | ||
+ | </ | ||
+ | |||
+ | |||
+ | <note tip> | ||
+ | sous Install new software > add > http:// | ||
+ | |||
+ | Puis après avoir relancé Eclipse, sous New > Other > Object Aid..> Classes .... ensuite vous posé simplement les classes à visualiser sur votre diagramme. | ||
+ | </ | ||
===== Je comprends ===== | ===== Je comprends ===== | ||
Line 60: | Line 71: | ||
{{: | {{: | ||
+ | < | ||
+ | <panel icon=" | ||
Le concept d'" | Le concept d'" | ||
Line 89: | Line 101: | ||
?> | ?> | ||
</ | </ | ||
+ | |||
+ | </ | ||
+ | </ | ||
=== Complétons ce code === | === Complétons ce code === | ||
Pour pouvoir accéder à cet attribut nous allons à présent dans le code définir des // | Pour pouvoir accéder à cet attribut nous allons à présent dans le code définir des // | ||
+ | |||
+ | < | ||
+ | <panel icon=" | ||
Le code de la classe Engin en java devient : | Le code de la classe Engin en java devient : | ||
Line 113: | Line 131: | ||
} | } | ||
</ | </ | ||
+ | </ | ||
+ | </ | ||
A partir de ce code, nous pouvons à présent créer une " | A partir de ce code, nous pouvons à présent créer une " | ||
Line 135: | Line 155: | ||
==== 3) Je sais passer du modèle d'une classe avec un attribut et une méthode au code ==== | ==== 3) Je sais passer du modèle d'une classe avec un attribut et une méthode au code ==== | ||
{{: | {{: | ||
+ | |||
+ | < | ||
+ | <panel icon=" | ||
**Code généré en java** | **Code généré en java** | ||
Line 169: | Line 192: | ||
</ | </ | ||
+ | </ | ||
+ | </ | ||
Une proposition d' | Une proposition d' | ||
Line 257: | Line 282: | ||
{{: | {{: | ||
{{: | {{: | ||
+ | |||
+ | < | ||
+ | <panel icon=" | ||
+ | |||
**Code java correspondant ** | **Code java correspondant ** | ||
Line 291: | Line 320: | ||
</ | </ | ||
+ | </ | ||
+ | </ | ||
Complétons la classe '' | Complétons la classe '' | ||
+ | < | ||
+ | <panel icon=" | ||
+ | |||
<code java> | <code java> | ||
public class Engine { | public class Engine { | ||
Line 333: | Line 366: | ||
</ | </ | ||
+ | </ | ||
+ | </ | ||
On ajoute des tests | On ajoute des tests | ||
<code java> | <code java> | ||
Line 375: | Line 410: | ||
La classe '' | La classe '' | ||
Remarquez que la multiplicité de 1 cette fois-ci crée un attribut simple de type Engine | Remarquez que la multiplicité de 1 cette fois-ci crée un attribut simple de type Engine | ||
+ | |||
+ | < | ||
+ | <panel icon=" | ||
<code java> | <code java> | ||
Line 397: | Line 435: | ||
} | } | ||
</ | </ | ||
+ | </ | ||
+ | </ | ||
Pour tester nous ajoutons à présent l' | Pour tester nous ajoutons à présent l' | ||
Line 404: | Line 444: | ||
</ | </ | ||
- | Nous décidons à présent que l'on ne veut pas que n' | + | Nous décidons à présent que l'on ne veut pas que n' |
+ | < | ||
+ | <panel icon=" | ||
+ | |||
<code java> | <code java> | ||
Line 463: | Line 507: | ||
</ | </ | ||
+ | </ | ||
+ | </ | ||
Nous testons ce code. | Nous testons ce code. | ||
<code java> | <code java> | ||
Line 486: | Line 532: | ||
</ | </ | ||
- | ===== A vous ===== | + | ===== 6) A vous : appliquez tout seul ce qui précède |
{{: | {{: | ||
Line 512: | Line 558: | ||
- Quel code correspond au diagramme de classe UML ci-dessus ? | - Quel code correspond au diagramme de classe UML ci-dessus ? | ||
*/ | */ | ||
- | ===== Je sais passer du modèle d'une relation d' | + | ===== 7) Je sais passer du modèle d'une relation d' |
{{: | {{: | ||
{{: | {{: | ||
+ | |||
+ | < | ||
+ | <panel icon=" | ||
Line 552: | Line 601: | ||
</ | </ | ||
+ | </ | ||
+ | </ | ||
Je peux accéder au propriétaire d'une arme quelconque. | Je peux accéder au propriétaire d'une arme quelconque. | ||
Line 560: | Line 611: | ||
excaLight.setBelongsTo(Revan); | excaLight.setBelongsTo(Revan); | ||
</ | </ | ||
- | ===== A vous ==== | + | ===== 8) A vous ==== |
/* | /* | ||
Line 571: | Line 622: | ||
- Quel code correspond au diagramme de classe UML ci-dessus ? | - Quel code correspond au diagramme de classe UML ci-dessus ? | ||
- Imaginez que l'on veuille pouvoir demander à une '' | - Imaginez que l'on veuille pouvoir demander à une '' | ||
+ | - < | ||
+ | <panel icon=" | ||
+ | |||
- Voici le code de cette nouvelle méthode : | - Voici le code de cette nouvelle méthode : | ||
<code java> | <code java> | ||
Line 592: | Line 646: | ||
sithArmada.attack(); | sithArmada.attack(); | ||
</ | </ | ||
- | ===== Je sais passer du code au modèle ===== | + | |
+ | </ | ||
+ | </ | ||
+ | ===== 9) Je sais passer du code au modèle ===== | ||
< | < | ||
Line 637: | Line 694: | ||
===== Complétez le diagramme de séquence ===== | ===== Complétez le diagramme de séquence ===== | ||
- | Compléter les deux diagrammes pour introduire : | + | Compléter les diagrammes |
- les armadas attaquent. Chaque armada demande à ses engins d' | - les armadas attaquent. Chaque armada demande à ses engins d' | ||
2018_2019/s2/td/td_classe_code.1550341681.txt.gz · Last modified: 2019/02/16 18:28 by blay