The Best Code is No Code At All

Un blog avec du code dedans.

Test Driven Learning - Go

Go est un langage qui buzz beaucoup depuis quelques temps en grande partie à cause de Docker, j’ai donc eut l’envie de m’initier à ce langage.

Je me suis demandé comment commencer : faire des tutoriaux, souvent cela se résume à des copier-coller et finit par une connaissance très partielle.

Du coup, je me suis dit pourquoi ne pas essayer de faire le kata FizzBuzz pour apprendre.

C’est un kata très simple que je connais bien, je l’ai fait avec différentes contraintes en Java alors pourquoi ne pas le faire en Go ?

C’est parti !

Kata Print Diamond

Ce kata définit par Seb Rose a pour but de montrer une approche visant à recycler les tests afin de ne pas créer de phase tunnel de refactor long et massif.

J’ai donc respecté l’approche TDD pour l’émergence du design et fait des ‘baby step’ en créant des tests pour chacune des étapes afin d’avoir une victoire à chaque fois. (Il est très important d’avoir rapidement un retour positif pour ce que l’on fait)

Description

Étant donné une lettre, imprimer un diamant en commençant par “A” avec la lettre fournie pour point le plus large.

Par exemple print-diamond ‘C’ affiche :

1
2
3
4
5
  A
 B B
C   C
 B B
  A

Promesse De Promesse, Promis ?

Lors d’une conversation avec un collègue de travail (Emmanuel Demey), une question est venue :

Si une promesse prend comme argument de son resolve une promesse, que se passe t’il dans le then de la méthode appelante ?

Le resultat est une promesse ou une String ?

Javascript - Héritage & Assign/extend

Une petite reflexion autour de l’héritage en Javascript ES5.

Assign/Extend

Example 1-1

1
2
3
4
5
6
7
// one
var one = { val: 'A', fn: function(){ return this.val; } };
this.one = one;

// two
var two = Object.assign({}, one);
this.two = two;