User Tools

Site Tools


2016_2017:s3:concprogobjet:td:codingdojo

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:codingdojo [2016/10/16 09:02]
blay [7mn Connexion et lancement de la session]
2016_2017:s3:concprogobjet:td:codingdojo [2016/10/19 13:40] (current)
blay [7mn Connexion et lancement de la session]
Line 3: Line 3:
 Objectifs = appréhender les tests par le jeu Objectifs = appréhender les tests par le jeu
  
 +
 +<note warning>​Les temps sont donnés comme des indications,​ ils ne sont pas une contrainte! La seule contrainte est de réussir à coder le défi qui vous est lancé dans les 2heures !</​note> ​
  
 ===== 3mn Organisation ===== ===== 3mn Organisation =====
Line 11: Line 13:
   - Connectez vous à [[http://​cyber-dojo.org/​]]   - Connectez vous à [[http://​cyber-dojo.org/​]]
   - **"​Enter a practice Session :"** le numéro vous est donné en TD.   - **"​Enter a practice Session :"** le numéro vous est donné en TD.
 +  - **Start Coding**
   - **Test**   - **Test**
   - Corriger et **Test**   - Corriger et **Test**
Line 17: Line 20:
  
  
-===== 10mn Compréhension ===== +**Plus :** L'IDE est extrêmement simple : test=sauvegarder les codes, gestion de version, exécution automatique,​ etc. Sur le dashboard, on peut voir l'​avancé de tous les groupes. 
-  ​* ​Regardez les instructions,​ sur le site directement (**Instructions**),​ un rappel de l'​énoncé est "​recopié"​ ci-dessous.+ 
 +**Défaut :** L'IDE est extrêmement simple :  pas d’auto completion, pas d’import, erreur debuggable par console java (pas d’aide de l’IDE).... 
 + 
 + 
 + 
 + 
 +===== 15mn Compréhension ​et premiers pas ===== 
 +<note tip>​Lisez tout ce passage avant de commencer !</​note>​  
 +    - Regardez les instructions,​ sur le site directement (**Instructions**),​ un rappel de l'​énoncé est "​recopié"​ ci-dessous. 
 +   - Discutez en équipe (paire ou triplet) pour imaginer une solution. 
 +    - Copiez--collez le test //​HikerTest.java//​ qui est donné en exemple. Renommez le en “BookShopTest.java”.  
 +    - Attention aux imports static ! Ne pas les enlever !!. 
 +    - Instructions :  
 +           * **API : classe : BookShop**, méthode : double cost(int[] order) 
 +           * exemple de test 
 +<code java> 
 +BookShop b = new BookShop();​ 
 +@Test 
 +   ​public void costForTwoDifferentBooks() throws Exception { 
 +        int [] order = new int[]{0,​1,​1,​0,​0};​ 
 +        assertEquals( 15.2 , b.cost(order),​ 0.001); 
 +    }  
 + </​code>​ 
 + 
  
   * Tuyaux ((mais vous êtes autonomes, à vous de vous organiser)) :    * Tuyaux ((mais vous êtes autonomes, à vous de vous organiser)) : 
-       * Choisissez la manière de représenter une commande (3livres ​du 1e titre, 2 livres du 2e, aucun du 3e, 4e et 5e) +       * Choisissez la manière de représenter une commande (3 livres ​du 1e titre, 2 livres du 2e, aucun du 3e, 4e et 5e). Le test qui vous est donné peut vous y aider. 
-       * Pensez "​INCREMENTAL"​ et tests  : vous faîtes passer les premiers tests (par exemple, je sais calculer le cout d'une commande qui contient un livre) et vous avancez avec des tests plus difficiles qui ne passent pas forcément, mais vous pouvez pas à pas en construire d'​autres qui passent. A tout moment, i) vous avez une version avec des tests qui passent, ii) vous+       * Pensez "​INCREMENTAL"​ et tests  : vous faîtes passer les premiers tests (par exemple, je sais calculer le coût d'une commande qui contient un livre) et vous avancez avec des tests plus difficiles qui ne passent pas forcément, mais vous pouvez pas à pas en construire d'​autres qui passent. A tout moment, i) vous avez une version avec des tests qui passent ​(par retour en arrière à une version précédente), ii) vous pouvez tenter de nouveaux codes si la structure première ne passe pas. 
 +       * Rappelez-vous : faites vous de petites méthodes, avec des noms qui veulent dire ce qu'​elles font...cela vous aidera..
  
-=====  ​30mn Développements ===== +=====  Développements ​en "​paire" ​===== 
-Top.... ​Toutes les 10mn, celui qui programme change. C'est OBLIGATOIRE ! +Top.... ​Dans l'​équipeun seul étudiant a le "​clavier"​ les autres sont là pour l'​aider le guider. Vous changez ​celui qui saisit régulièrement pour vous donner une opportunité d'être dans les 2 situations.
  
-=====  10mn Tests Fonctionnels ===== 
-Un nouveau jeu de tests vous est donné...(Comment???​) ​ 
-Vous vérifiez qu'il passe, sinon... on recommence !  
  
-=====  ​20mn Livraison ===== +=====  Livraison ===== 
-Vous corrigez, modifiez...+Avant la fin : 
 Puis vous nous envoyez le .tgz obtenu par download Puis vous nous envoyez le .tgz obtenu par download
  
2016_2017/s3/concprogobjet/td/codingdojo.1476601348.txt.gz · Last modified: 2016/10/16 09:02 by blay