Transformations en séquence avec les design patterns Chaîne de Responsabilité et Pipeline

Introduction La chaîne de responsabilité et le Pipeline sont deux design patterns issus de la programmation orientée objet qui sont similaires en apparence, mais qui servent des finalités différentes. Abordons-les au travers d'un exemple simplifié, basé sur l'authentification d'un utilisateur. Chaîne de responsabilité Dans de nombreuses circonstances, un objet métier est amené à être soumis … Lire la suite de Transformations en séquence avec les design patterns Chaîne de Responsabilité et Pipeline

Vous reprendez bien un peu de curry avec votre programme?

En programmation fonctionnelle, la curryfication consiste à transformer une fonction prenant plusieurs arguments en une séquence de fonctions prenant un seul argument chacune. Bien qu’ étant à l’origine un concept théorique en mathématiques et en informatique, s’avère être un outil puissant dans l’architecture logicielle. Elle permet de décomposer les fonctions complexes en étapes plus simples et modulaires, facilitant ainsi leur compréhension, leur réutilisation et leur extension.

Un système simple et efficace de sélecteurs en Scala

Cet article aborde la gestion de comportements variés en programmation, en mettant en avant la notion de "sélecteurs", représentés par des classes en programmation orientée objet. Ces sélecteurs choisissent la méthode d'approche en fonction des contextes d'exécution. Une approche fonctionnelle est proposée pour simplifier cette gestion et éviter les duplications d'efforts, en privilégiant la combinaison et l'évaluation des sélecteurs.

Vers un langage spécifique pour la description de séries chronologiques réalistes

Il y a de cela plusieurs années, mon équipe était confrontée à un problème récurrent: nous développions des outils pour gérer des données issues de séries chronologiques, mais ne disposions pas de suffisamment de telles données pour valider notre travail. Le DSL créé à l'époque pour décrire de telles séries présente des limitations qui sont discutées, et une piste d'évolution de ce DSL est présentée.