Programmation
-
Callbacks strike Back
Cet article se place dans la continuité de l’article précédent: Il y a peut être une option pour continuer ¡¿. Avant de présenter de nouvelles techniques – les promises / deferred / future – nous commencerons par transposer les techniques vues précédement en javascript. En poussant le bouchon un peu plus loin, nous verrons les [...]
-
Session ALT.NET “Open-source Web Frameworks”
Jeudi dernier, je suis allé assister à la session ALT.NET organisée par Rui (@rhwy) et Mathias (@mathiaskluba) autour de deux frameworks web open-source de l’éco-système .NET : ServiceStack et NancyFx. Service Stack et Nancy partent du même besoin de construire des applications et des services REST sans dépendre ni de l’ensemble de l’infrastructure ASP.NET, ni [...]
-
Les fonctions et les fonctions d’ordre supérieur
La programmation fonctionnelle a de nombreux attraits dont le traitement réservé aux fonctions. Dans beaucoup de langages de programmation les fonctions ont un statut particulier. Par exemple en Java il est possible de créer un entier, de l’assigner à une variable ou de le passer comme argument à une autre fonction mais on ne peut [...]
-
Commentaires sur les commentaires
Lorsqu’on vous a parlé de qualité de code, on vous a sûrement déjà parlé des commentaires. On vous a peut-être dit qu’il était important d’avoir du code bien commenté, voire abondamment commenté. Alors vous ouvrez votre IDE, vous le configurez aux petits oignons et vous commencez à comm… Minute ! Tous les commentaires ne sont [...]
-
Bonnes pratiques de dév, Programmation
TDD Vs. math formalism: friend or foe?
It is not uncommon to oppose the empirical process of TDD, together with its heavy use of unit tests, to the more mathematically based techniques, with the « formal methods » and formal verification at the other end of the spectrum. However I experienced again recently that the process of TDD can indeed help discover and draw [...]
-
Il y a peut être une option pour continuer ¡¿ (réflexion sur la programmation par continuation)
L’une des difficultés principales lorsque l’on aborde la programmation par événement est qu’il faut changer sa manière de penser: l’appel d’une méthode ne renvoie pas de résultat. Lorsque le résultat est disponible, celui-ci est à son tour publié sur un bus ou fourni à une fonction de rappel passée en paramètre lors de l’appel. C’est [...]
-
RPSLS — Rock Paper Scissors Lizard Spock
Let’s start with a tweet from earlier today : Leonard Hofstadter @TheRealLeonardH Anyone bored and have an android phone? play.google.com/store/apps/det… 22 Nov 12 Répondre Retweeter Favori If you follow the link, you’ll get to a Google Play application that allows you to play the (in-)famous RPSLS (Rock-paper-scissors-lizard-Spock) game. Why that tweet stroke me is that [...]
-
Cartesian products in LINQ (fluent syntax)
Have you ever tried to combine sequences in order to build Cartesian products in LINQ ? This is really easily achieved using the query expressions syntax, writing for instance : var ints = Enumerable.Range(1, 4); var longs = Enumerable.Range(1, 3).Select(i => (long)i); var products = from i in ints from l in longs select i [...]
-
Bonnes pratiques de dév, Programmation
Collaborative Artifacts as Code
A software development project is a collaborative endeavor. Several team members work together and produce artifacts that evolve continuously over time, a process that Alberto Brandolini (@ziobrando) calls Collaborative Construction. Regularly, these artifacts are taken in their current state and transformed into something that become a release. Typically, source code is compiled and packaged into some [...]