User Tools

Site Tools


2016_2017:s3:concprogobjet:td:td1

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
2016_2017:s3:concprogobjet:td:td1 [2016/09/09 00:27]
blay [Un projet sous tests (15mn)]
2016_2017:s3:concprogobjet:td:td1 [2016/09/29 21:15] (current)
blay [EVALUATION de CE TD]
Line 12: Line 12:
  
    * [[https://​www.jetbrains.com/​idea/​|IntelliJ]]    * [[https://​www.jetbrains.com/​idea/​|IntelliJ]]
-   * [[http://​www.eclipse.org/​downloads/​packages/​eclipse-ide-java-developers/​marsr|Eclipse]] ​ 
  
 Et pour GIT, vous devez déjà l'​avoir sur vos ordinateurs. Et pour GIT, vous devez déjà l'​avoir sur vos ordinateurs.
Line 73: Line 72:
 ==== Analyse : 15mn  ==== ==== Analyse : 15mn  ====
  
-  - Sous [[:​modelio|MODELIO]],​ commencer par créer un projet ​+  - Sous [[:​modelio|MODELIO]],​ commencer par créer un projet ​(Attention à bien sélectionner **Java Project**)
   - Définissez un diagramme de classes de niveau Analyse.   - Définissez un diagramme de classes de niveau Analyse.
   - Définissez,​ par cas d'​utilisation,​ un diagramme de séquence élémentaire mettant en jeu les objets de votre système **et compléter** votre diagramme de classes au fur et à mesure. Pour cela utilisez, évidemment des lignes de vie qui font référence à des classes et les messages qui vous permettent d'​identifier les méthodes et mettre à jour vos diagrammes de classes.   - Définissez,​ par cas d'​utilisation,​ un diagramme de séquence élémentaire mettant en jeu les objets de votre système **et compléter** votre diagramme de classes au fur et à mesure. Pour cela utilisez, évidemment des lignes de vie qui font référence à des classes et les messages qui vous permettent d'​identifier les méthodes et mettre à jour vos diagrammes de classes.
Line 143: Line 142:
 Aujourd'​hui nous faisons le choix de générer les codes puis de travailler ces derniers sans chercher, au moins pour l'​instant,​ à maintenir les modèles en cohérence. Aujourd'​hui nous faisons le choix de générer les codes puis de travailler ces derniers sans chercher, au moins pour l'​instant,​ à maintenir les modèles en cohérence.
  
-  - Générez les codes (voir [[https://​mbf-iut.i3s.unice.fr/​doku.php?​id=modelio#​generer_les_codes|ici]] et choisissez comme répertoire de génération celui sous src/​main/​java+  - Générez les codes (voir [[https://​mbf-iut.i3s.unice.fr/​doku.php?​id=modelio#​generer_les_codes|ici]] et choisissez comme répertoire de génération celui sous src/​main/​java/​fr/​unice/​iut/​info/​coo
   -       - Sélectionner votre diagramme de classe en conception;   -       - Sélectionner votre diagramme de classe en conception;
       - Vérifier que vous avez bien toutes les classes prévues; ​       - Vérifier que vous avez bien toutes les classes prévues; ​
-      - Préciser si vous voulez travailler avec des vecteurs ou autres (Réfléchissez!!),​ **et** **préciser bien comme répertoire pour la génération votre répertoire ​src sous Eclipse** {{ :​2014_2015:​s3:​concprogobjet:​td:​generationcodejava.png?​direct&​200 |}}+      - Préciser si vous voulez travailler avec des vecteurs ou autres (Réfléchissez!!),​ **et** **préciser bien comme répertoire pour la génération votre répertoire** ​(si besoin, spécifiez le nom du package fr.unice.iut.info.coo directement dans le code généré) ​{{ :​2014_2015:​s3:​concprogobjet:​td:​generationcodejava.png?​direct&​200 |}}
   - Retourner sous IntelliJ. Si votre répertoire est mal organisé (nouveau package par exemple, déplacer simplement les codes comme vous le voulez, par glisser/​coller.)   - Retourner sous IntelliJ. Si votre répertoire est mal organisé (nouveau package par exemple, déplacer simplement les codes comme vous le voulez, par glisser/​coller.)
-  - Corriger vos codes pour qu'ils soient "​compilables", ​en particulier en ajoutant le fichier ​{{:​javadesigner.jar|}} comme une library du projet, afin que les annotations de Modelio soient comprises.+  - Corriger vos codes pour qu'ils soient "​compilables" ​:  
 +          -  Afin que les annotations de Modelio soient comprisesajouter ​{{:​javadesigner.jar|}} comme une library du projet ​ 
 +                - déposer sous idea/​libraries... puis sélectionner le .jar et l'​enregistrer comme une librairie utilisée par le projet 
 +                - **ou bien** placez vous sur le projet puis avec le menu contextuel (clique droit) > Open module Setting > Librairies et ajouter le .jar
 <​html>​ <​html>​
 <!-- <!--
Line 183: Line 185:
 */ */
     - Pour créer des tests sur votre classe //​Message//,​ suivez les instructions sous https://​www.jetbrains.com/​help/​idea/​2016.2/​creating-tests.html. La classe de test créée se trouve sous test/​java/​...     - Pour créer des tests sur votre classe //​Message//,​ suivez les instructions sous https://​www.jetbrains.com/​help/​idea/​2016.2/​creating-tests.html. La classe de test créée se trouve sous test/​java/​...
-          * Cochez les cases ''​setUp()''​ et ''​tearDown()''​.+          * Cochez les cases ''​setUp()'' ​((est exécutée avant tout test)) ​et ''​tearDown()'' ​((est exécutée après tout test)).
     -  IntelliJ a maintenant créé automatiquement le squelette de la classe de test. Il ne reste plus alors qu’à remplir cette dernière. ​     -  IntelliJ a maintenant créé automatiquement le squelette de la classe de test. Il ne reste plus alors qu’à remplir cette dernière. ​
 +    - Par exemple
 +     <​code java>
 +        protected Message mToTest;
 + protected String content;
 +
 + @Before
 + public void setUp() throws Exception {
 + content = "mon message";​
 + mToTest = new Message(content,​b);​
 + }
 +
 + @Test
 + public void setContenu() throws Exception {
 + String nv = "​newValue";​
 + mToTest.setContenu("​newValue"​);​
 + assertEquals("​ message contents is as expected",​nv,​mToTest.getContenu());​
 + assertFalse("​ message contents has been modified",​ mToTest.getContenu().equals(content));​
 + }
 +
 +     </​code>​
     - Dans le menu contextuel, cliquez sur //Run As – JUnit test//.     - Dans le menu contextuel, cliquez sur //Run As – JUnit test//.
 Enfin, le premier rapport de tests s’affiche !  Enfin, le premier rapport de tests s’affiche ! 
Line 207: Line 229:
   - Les modèles sont cohérents avec le code.   - Les modèles sont cohérents avec le code.
  
- +[[http://​jalon.unice.fr/​cours/​blay/​Cours-blay-20160929210709/​BoiteDepot-blay-20160929210839376812?​mode_etudiant=false|Jalon de dépôt pour Mme Fornarino : donner comme nom du dépot : Gr<​NumeroGroupe><​Noms des étudiants>​]]
-http://​jalon.unice.fr/​cours/​blay/​Cours.blay.2011-10-10.3543/​BoiteDepot-blay-20150731120912764725?​mode_etudiant=true&​menu=sujets+
 ===== Je sais ===== ===== Je sais =====
    
 <box round rgb(255,​204,​153) rgb(255,​255,​204) 97%|Je sais  :   > <box round rgb(255,​204,​153) rgb(255,​255,​204) 97%|Je sais  :   >
   * Créer un projet sous un IDE avancé, et le structurer correctement.   * Créer un projet sous un IDE avancé, et le structurer correctement.
-  * Générer ​le code à partir d'un modèle de classes en UML. +  * (Rappel) Faire correspondre ​le code java et un modèle de classes en UML. 
-  * Structurer mon projet pour intégrer les tests unitaires.  +  * Mettre en place des tests unitaires.  
-  * Utiliser ​Eclipse ​pour améliorer mon développement en utilisant les outils d'aide au développement.+  * Utiliser ​un IDE pour améliorer mon développement en utilisant les outils d'aide au développement.
 </​box>​ </​box>​
  
2016_2017/s3/concprogobjet/td/td1.1473373643.txt.gz · Last modified: 2016/09/09 00:27 by blay