Blog Arolla

Étiquette : programming

Il était une fois la fonction reduce

Imaginons une collection d’entiers: Dans une approche impérative, lorsque nous voulons calculer une valeur à partir d’une liste de valeurs, nous devons utiliser une boucle sur la liste et accumuler le résultat à l’extérieur de la boucle. Par exemple, pour calculer la somme des entiers, nous procédons comme suit : Dans une approche fonctionnelle, nous…

Le hashage cohérent

Le hashage cohérent a été introduit en 1997 par le papier [Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web] de Karger D., Lehman E., Leighton T., Panigrahy R., Levine M., Lewin, D. Le hashage cohérent est aujourd’hui une brique fondatrice et incontournable à beaucoup de technologies…

Revue de Presse de janvier

  Bonne année, bonne santé ! Comme nous allons l’entendre tout ce mois de janvier, il est temps d’explorer quelques bonnes résolutions ! Eviter des null pointers exceptions, par exemple : http://www.vertabelo.com/blog/technical-articles/50-shades-of-null-or-how-a-billion-dollar-mistake-has-been-stalking-a-whole-industry-for-decades Pour se sentir utile, pourquoi ne pas contribuer à l’open source ? Le lien suivant fait un retour d’expérience sur la participation à un projet open source.…

WPF : Tester ses affichages avec le designer de Visual Studio (2013)

Vous développez des interfaces graphiques complexes, mais pour tester l’affichage, il faut absolument démarrer l’application, et ça, ça peut prendre du temps pour accéder à l’interface voulue ? Pas de problème, Visual Studio permet d’afficher des valeurs par défaut dans le designer ! Je vais partir d’un exemple simple : un ViewModel composé d’une liste de Models composés…

Ecrire du code, un travail rédactionnel comme un autre

Le développement logiciel, qui pourtant n’en est pas à sa première décennie d’existence, n’en demeure pas moins une discipline jeune, et on sent que c’est un monde qui se cherche; Beaucoup de débats ouverts, et bon nombre de métaphores pour s’assimiler à des métiers existants de plus longue date: comparaison avec la construction d’un bâtiment,…

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…

La gestion des erreurs avec scala.util.Try (2/2)

Suite de l’épisode précédent. Après la découverte des bases de la gestion des erreurs avec scala.util.Try, nous allons, dans cette deuxième partie, explorer des fonctionnalités plus avancées. Nous utiliserons un exemple très simple pour illustrer nos propos : lancer un serveur sur un numéro de port fourni par l’utilisateur. Cette tâche se décompose en deux…

La gestion des erreurs avec scala.util.Try (1/2)

Scala 2.10 introduit une nouvelle structure monadique Try. Cette classe est particulièrement adaptée à la représentation d’un traitement pouvant réussir en renvoyant une valeur ou échouer en lançant une exception. Commerçons par un exemple simple : parser un numéro de port renseigné par un utilisateur sous forme d’une chaîne de caractères. 1 2 val input: String…