Procrastination ?

Le terme pourrait venir à l’esprit, si vous pensiez par exemple que j’ai la flemme d’écrire quoi que ce soit sur ce blog.

Et, en un sens, ce serait vrai.

Parce qu’il n’y a pas grand chose à se mettre sous la dent, il faut le dire.

D’un autre côté, je ne rends pas compte de grand chose, peut-être parce que, pour l’instant, je construis …

Enfin, je construis, façon de parler.

J’ai déja dit que je faisais pas mal de Javascript en ce moment. Je devrais plutôt dire que je ne fais que ça. Et, en un sens, je prends un pied conséquent à jouer avec la pile construite pour l’occasion.

Parce qu’il s’avère (essentiellement grâce au duck typing), qu’il est d’une simplicité terrifiante d’y faire rentrer des ronds dans des carrés, et de mélanger plus ou moins proprement des paradigmes objets et fonctionnels.

Tiens, je vais vous donner un exemple un peu tordu.

Vous avez entendu parler des Deferred en javascript ? Non. Bon, je ne vais pas vous expliquer ça plus avant qu’en vous disant que ça revient à pouvoir dire à du code Javascript « quand on te dit go, tu go ». Je ne vais pas non plus rentrer dans la polémique des Promises/A vs Promises/B.

Non.

J’avais ce matin un problème bizarre.

Je voulais utiliser l’API de jQuery Deferred pour avoir une espèce de Deferred réexecutable. Il s’avère, et je le comprend tout à fait, que ça n’est pas possible. Parce que le Deferred, une fois qu’il s’est exécuté, est tout bonnement terminé. Je me suis donc creusé la tête un moment avant d’écrire mon petit module requirejs qui me fournit la classe qui va bien :

Evidement, ça n’a pas l’air de grand chose. Mais là, grâce à ce « truc », j’ai toute l’API de Defferred qui m’intéresse, et je peux créer le « vrai » objet sans problème.

Je dois bien reconnaître que c’est bien plus simple que d’implémenter une interface, ou quoi que ce soit d’aussi compliqué.

Alors, procrastination ? Sans doute, dans la mesure où ce code est fondamentalement asynchrone🙂

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s