Blog Arolla

Catégorie : Bonnes pratiques de dév

Domain Driven Design en 5 minutes

Qu’est-ce que cela signifie ? À la différence des approches xDD,  test-driven-design (TDD) et behaviour-driven-design (BDD), qui fournissent un cadre pour l’implémentation du bon comportement du logiciel, le DDD s’intéresse au design du logiciel. Une traduction possible est « conception guidée par le domaine ». Par « domaine », il faut entendre « métier» et…

Différents tests pour un·e développeu·r·se

Quand on parle des tests pour les développeurs on pense automatiquement aux tests unitaires. Mais vous savez très bien, comme moi, que ce ne sont pas les seuls tests qu’un·e développeu·r·se peut écrire et réaliser. Mais avant d’énumérer les différents tests disponibles pour un·e développeu·r·se, rappelons les fondamentaux. A quoi sert un test ? Quand…

Passer à la vitesse supérieure grâce à la programmation réactive

La programmation réactive a beaucoup retenu l’attention au cours ces dernières années. Elle se base sur la programmation asynchrone pour gérer les flux de données et la propagation du changement. En outre, avec l’apparition des librairies comme Rx, Eclipse Vert.x, Reactor, etc. la programmation fonctionnelle connaît également un véritable succès. Si vous souhaitez savoir quel…

Man versus Legacy : Gilded Rose (deuxième partie )

Dans le premier épisode nous avions expliqué le contexte du kata et proposé une approche permettant de travailler la réécriture du code en toute sécurité. Pour cela nous avions écrit des tests de caractérisation, jusqu’à l’obtention d’un golden master. Nous avons toute latitude pour refactorer le code afin d’y voir plus clair. La moindre erreur…

Man versus Legacy : Gilded Rose (première partie)

Intervenir sur des bases de code pénibles constitue une des réalités ingrates du métier de développeur. Ce type de code est fréquemment qualifié du terme politiquement correct de legacy. A l’origine, on désignait ainsi du code très ancien, et peu voire pas documenté. Le consensus actuel se réfère à du code démuni de tests, peu…

Trying to set up my mind on Redux as an event sourcing system

When starting a project using Redux, developers often wonder after which pattern they should name actions. E.g, considering a counter application: INCREMENT_COUNTER or COUNTER_INCREMENTED? This is certainly not only a question of naming. In fact, it reveals at least 3 entangled questions: Are we speaking of commands or events? Should the action bear a payload?…

Tester un repository Azure Cosmos DB

Les repositories sont un composant important de toute application mettant en jeu la persistance de données. Ils embarquent souvent des requêtes complexes, et pourtant ils font rarement l’objet de tests. Un test de repository doit s’adresser à une vraie base de données et devient donc un test d’intégration. Il faut placer la base dans un…

Revue de presse d’avril – Java, open source et soin du code

Dans cette revue de presse il sera question de Java, de projet open source et de l’importance de prendre soin de ce que l’on écrit lorsque l’on code. Attelons-nous à regarder les entrailles de Java. Ici, je souhaite vous faire suivre certaines réflexions qui vont façonner la plateforme pour le futur. Plus précisément comment faire…

Tester ce que l’on ne maîtrise pas

Les vacances de fin d’année ont été un peu courtes. Disons plutôt le week-end, étant parti le vendredi 28 décembre, me voilà déjà de retour au travail le mardi 2 janvier… On ouvre le backlog de la nouvelle année, on prend une nouvelle tâche, on l’analyse et, en bon praticien du TDD, on écrit un nouveau test.…

Quand réussir complique les choses

Refonte architecturale et refonte organisationnelle vont souvent de pair. D’un côté, les refontes architecturales actuelles promeuvent la modularisation en composants techniques, faiblement couplés et hautement cohésifs. Similairement, dans le cadre d’une transformation organisationnelle, le paradigme de la petite équipe pluridisciplinaire et autonome tend à être adopté. Dans ces deux cas, alors, vient la question de…