User Tools

Site Tools


2017_2018:s2:td:td_classe_code

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
2017_2018:s2:td:td_classe_code [2018/02/11 12:06]
blay
2017_2018:s2:td:td_classe_code [2018/02/19 15:44] (current)
blay [Je sais passer du dessin d'une classe avec un attribut et une méthode au code]
Line 1: Line 1:
  
  
-====== ​Classes : modélisation ​et codage ​======+====== ​Des modèles aux codes et vis-versa ​======
  
 **Objectifs :**  **Objectifs :** 
Line 8: Line 8:
 <note important>​Nous faisons le lien entre modeles et codes. ​ <note important>​Nous faisons le lien entre modeles et codes. ​
 Vous pouvez travailler les codes uniquement au niveau du papier. Vous pouvez travailler les codes uniquement au niveau du papier.
-Vus devez essentiellement comprendre les grands principes.+Vous devez essentiellement comprendre les grands principes.
 </​note>​ </​note>​
  
 +<note tip>​L'​utilisation d'un outil pour coder n'est pas indispensable dans ce TD. Si vous le voulez vous pouvez utiliser ECLIPSE, mais la version NEON3, les autres ne fonctionnent pas...</​note>​
 ===== Je comprends ===== ===== Je comprends =====
  
Line 22: Line 23:
 ** En Java** ​ ** En Java** ​
 <code java> <code java>
-public class Engin {+public class Engine ​{
 } }
 </​code>​ </​code>​
Line 28: Line 29:
 ** En C#**  ** En C#** 
 <code c#> <code c#>
-public class Engin {+public class Engine ​{
 }; };
 </​code>​ </​code>​
Line 35: Line 36:
 <code php> <code php>
 <?php <?php
-public class Engin {+public class Engine ​{
 } }
 ?> ?>
Line 43: Line 44:
 On crée une instance d'​engin en java par le code suivant :  On crée une instance d'​engin en java par le code suivant : 
 <​code>​ <​code>​
-Engin defiance = new Engin();+Engine ​defiance = new Engine();
 </​code>​ </​code>​
 On crée un autre engin par :  On crée un autre engin par : 
 <​code>​ <​code>​
-Engin xwing = new Engin();+Engine ​xwing = new Engine();
 </​code>​ </​code>​
  
Line 96: Line 97:
  private int power;  private int power;
  
 +        //Accesseur en lecture : on lit la valeur de l'​attribut power
  public int getPower() {  public int getPower() {
  return power;  return power;
  }  }
 +        
 +       //​Accesseur en écriture : on modifie la valeur de l'​attribut power (noté this.power) avec la valeur en parametre power
  public void setPower(int power) {  public void setPower(int power) {
  this.power = power;  this.power = power;
Line 131: Line 134:
 **Code généré en java** **Code généré en java**
 <code java> <code java>
-public class Engin {+public class Engine ​{
  private int power;  private int power;
  
Line 146: Line 149:
  * @author blay  * @author blay
  */  */
-class Engin {+class Engine ​{
  /**  /**
  * @AttributeType int  * @AttributeType int
Line 165: Line 168:
  
 <code java> <code java>
-public class Engin {+public class Engine ​{
  private int power;  private int power;
  
Line 201: Line 204:
 </​code>​ </​code>​
 ==== Je sais passer du dessin d'une association au code ==== ==== Je sais passer du dessin d'une association au code ====
 +{{:​2017_2018:​s2:​td:​14450576294_886eb4b940_b.jpg?​300 |}}
 {{:​2017_2018:​s2:​td:​capture_d_e_cran_2018-02-11_a_01.14.10.png?​500|}} {{:​2017_2018:​s2:​td:​capture_d_e_cran_2018-02-11_a_01.14.10.png?​500|}}
  
Line 210: Line 213:
  private int power;  private int power;
  
-        //​Association becomes ​un attribute ; multiplicity * => array or any collections +        //​Association becomes ​an attribute ; multiplicity * => array or any collections 
- private Pilot[] pilots = new Pilot[0];+ private Pilot[] pilots; // = new Pilot[0]; ​//array de dimension 1
   
   
Line 286: Line 289:
   
  //Get the pilots of defiance  //Get the pilots of defiance
- Pilot[] ​pilots ​= defiance.getPilots();​+ Pilot[] ​ourPilots ​= defiance.getPilots();​
   
  //Print the first pilot (only object reference)  //Print the first pilot (only object reference)
- System.out.println("​Pilot : " + pilots[0]);+ System.out.println("​Pilot : " + ourPilots[0]);
  }  }
  
Line 423: Line 426:
  
  
 +/*
 === et encore === === et encore ===
  
Line 429: Line 432:
  
    - Quel code correspond au diagramme de classe UML ci dessus ?    - Quel code correspond au diagramme de classe UML ci dessus ?
 +*/
 ===== Je sais passer du dessin d'une relation d'​héritage au code ==== ===== Je sais passer du dessin d'une relation d'​héritage au code ====
  
 +{{:​2017_2018:​s2:​td:​star-wars-the-old-republic-girl-warrior-lightsabers-battle-smoke-wallpaper-hd.jpg?​300 |}}
 {{:​2017_2018:​s2:​td:​weapons.png?​400|}} {{:​2017_2018:​s2:​td:​weapons.png?​400|}}
  
Line 484: Line 487:
 */ */
  
 +{{:​2017_2018:​s2:​td:​star-wars-armada-2400x1200-259395126765.jpg?​300 |}}
 {{:​2017_2018:​s2:​td:​spacialship.png?​700|}} {{:​2017_2018:​s2:​td:​spacialship.png?​700|}}
  
Line 529: Line 533:
  private int capacity;  private int capacity;
   
- DecompressionChamber decompressionChamber;​+ private ​DecompressionChamber decompressionChamber;​
 } }
  
Line 543: Line 547:
 ===== Du diagramme de séquence au diagramme de classes ===== ===== Du diagramme de séquence au diagramme de classes =====
  
 +{{ :​2017_2018:​s2:​td:​darth-vader-stormtroopers-wide-wallpaper.jpg?​300 |}}
 Voici un diagramme de séquence, complétez le diagramme de classe pour tenir compte des nouveaux éléments. Voici un diagramme de séquence, complétez le diagramme de classe pour tenir compte des nouveaux éléments.
 {{:​2017_2018:​s2:​td:​sequence.png?​600|}} {{:​2017_2018:​s2:​td:​sequence.png?​600|}}
2017_2018/s2/td/td_classe_code.1518347211.txt.gz · Last modified: 2018/02/11 12:06 by blay