-
Notifications
You must be signed in to change notification settings - Fork 2
1er decembre 2015
Emmanuel Gaillot edited this page Dec 1, 2015
·
1 revision
Yannick Francois
Emmanuel Gaillot
Jonathan Perret
Christophe Robillard
- J'ai fait les exos dimanche dernier.
- Ça m'a pris un peu plus de temps (que de les faire juste après la session), car il a fallu que je me remette dans le bain.
- Ce qui m'avait motivé pour faire les exos juste après parce qu'il y avait un truc qui ne marchait pas, que je voulais régler. (pattern « rester sur un cliffhanger » ?)
- Je suis allé à la Fête du Code créatif.
- J'ai bien aimé l'animation autour du logiciel Paysage. Jamais je n'aurais imaginé pouvoir faire des choses esthétiques avec du code.
- C'est dommage qu'il n'y ait qu'une session de Gym Club /ut7 par mois.
- Il reste à trouver un format qui s'accorde avec le temps (et le budget) disponible(s).
- Faire plus de TP ? Avoir plus de retours ?
- Faire un stage intensif ?
- Christophe nous rejoue son exo
- Dans la Cuisine à code : refaire Sierpinski - mais différemment, un autre algorithme et un autre environnement
- Possible travail exploratoire.
- Séparation du code en une partie
pascal
et une partiesierpinski
. - Dessin du triangle (rectangle) de Sierpinski
- Dessin du triangle (isocèle) de Sierpinski
- Nettoyage du code
Concernant les fonctions :
- Quand on définit une fonction, on met une espace entre
function
et()
:var maFonction = function () {...};
- On peut passer une variable contenant une (déclaration de) fonction à
map
:var resultat = monTableau.map(maFonction);
-
map
appelle la fonction qui lui est passée avec trois paramètres (pour l'instant ?) :- l'élément de la liste
- l'index dans la liste
- la liste complète
- On ne peut pas mettre de valeur par défaut dans la signature d'une fonction en JavaScript (contrairement à Ruby)
- En revanche, on n'est pas obligé d'appeler une fonction JavaScript avec tous les arguments de sa signature.
Concernant les tests :
- Notion de fake : une implémentation rapide, très spécifique, essentiellement là pour faire rapidement passer un test qu'on vient d'écrire. D'où le proverbe : Fake It 'Til You Make It.
- En TDD, en général, pas plus d'un fake à la fois. C'est délicat d'ajouter un nouveau test quand il y a des fakes, si le test n'est pas spécifiquement là pour lever les fakes en question.
Concernant Vim :
- différence entre
t
etf
(par exemple, dansdtx
vs.dfx
) -
J
pour joindre deux lignes -
dW
permet de supprimer un mot (possiblement la virgule ou le point) et les espaces qui le suivent.
Concernant le découpage modulaire :
- Quand une fonction n'utilise qu'un attribut d'un objet comme paramètre, on lui passe cet attribut (plutôt que l'objet complet). « On (la fonction, le module, etc.) ne demande que ce dont on a besoin. »
- Ne pas tordre notre API pour satisfaire les conventions de l'appelant (conventions qui peuvent changer). C'est l'appelant qui doit s'appuyer sur une couche d'adaptation pour utiliser l'API telle qu'elle est. (Cf. conférences en ligne de Sandy Metz dans le monde Ruby).
Concernant le format :
- Faire des pauses ! En particulier, avant d'avoir le cerveau grillé.
- prévoir une pause à l'avance, au milieu de la session ?
- être à l'écoute des signes de saturation ?
- enlever dans
uneEtoilePourImpairIsocele
l'adhérence aux appels parmap
- générer une « courbe de triangle de Sierpinksi » en notation L-Systems (cf.
http://mathoverflow.net/questions/128897/l-systems-and-sierpinski-triangle)
- … et la faire dessiner par un robot en Lego Mindstorm
- … ou la faire dessiner dans un navigateur web
- … de préférence en TDD