<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>La Crafterie Tech</title><description>Vos applications spécifiques sur mesure, avec un focus sur la qualité !</description><link>https://lacrafterie.tech/</link><item><title>Les Couplers : ces code smells qui trahissent un couplage fort</title><link>https://lacrafterie.tech/blog/code-smells-couplers-detecter-le-couplage/</link><guid isPermaLink="true">https://lacrafterie.tech/blog/code-smells-couplers-detecter-le-couplage/</guid><description>Un code smell n&apos;est pas un bug, c&apos;est un signal. Tour d&apos;horizon de la famille des Couplers - Feature Envy, Message Chains, Inappropriate Intimacy - et de la Loi de Déméter, pour détecter le couplage avant qu&apos;il ne vous coûte cher.</description><pubDate>Fri, 12 Jun 2026 00:00:00 GMT</pubDate></item><item><title>La cohésion : quand une classe fait trop de choses</title><link>https://lacrafterie.tech/blog/cohesion-quand-une-classe-fait-trop-de-choses/</link><guid isPermaLink="true">https://lacrafterie.tech/blog/cohesion-quand-une-classe-fait-trop-de-choses/</guid><description>Vos classes s&apos;appellent Manager, Handler ou Utils ? C&apos;est probablement un problème de cohésion. Découvrez les 7 niveaux de cohésion et comment ils structurent un code maintenable.</description><pubDate>Mon, 02 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Le couplage : Ce boa constrictor qui étouffe vos projets à petit feu</title><link>https://lacrafterie.tech/blog/couplage-pourquoi-modifier-a-casse-b/</link><guid isPermaLink="true">https://lacrafterie.tech/blog/couplage-pourquoi-modifier-a-casse-b/</guid><description>Le couplage entre composants est la première source de rigidité dans un projet. Comprendre ses 7 niveaux permet d&apos;anticiper les problèmes avant qu&apos;il soit trop tard.</description><pubDate>Mon, 23 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Dependency Inversion : découpler votre code de la base de données</title><link>https://lacrafterie.tech/blog/dependency-inversion-decouplage-base-de-donnees/</link><guid isPermaLink="true">https://lacrafterie.tech/blog/dependency-inversion-decouplage-base-de-donnees/</guid><description>Vos services dépendent directement d&apos;Oracle, PostgreSQL ou MongoDB ? Le Dependency Inversion Principle est le rempart qui protège votre code métier du monde extérieur.</description><pubDate>Tue, 17 Feb 2026 00:00:00 GMT</pubDate></item><item><title>DRY mal appliqué : le piège du couplage invisible</title><link>https://lacrafterie.tech/blog/dry-mal-applique-piege-du-couplage/</link><guid isPermaLink="true">https://lacrafterie.tech/blog/dry-mal-applique-piege-du-couplage/</guid><description>DRY ne veut pas dire &apos;pas de duplication de code&apos;. C&apos;est &apos;pas de duplication de connaissance&apos;. Confondre les deux crée du couplage invisible qui explose au premier changement métier.</description><pubDate>Tue, 17 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Pourquoi les librairies de mock sont (presque toujours) un piège</title><link>https://lacrafterie.tech/blog/pourquoi-les-librairies-de-mock-sont-un-piege/</link><guid isPermaLink="true">https://lacrafterie.tech/blog/pourquoi-les-librairies-de-mock-sont-un-piege/</guid><description>NSubstitute, Moq, FakeItEasy - ces frameworks semblent pratiques. Moins de classes à écrire, une syntaxe fluente. Mais ils ont un défaut structurel : il n&apos;existe pas de bon niveau d&apos;assertion avec .Received(). Trop strict, vos tests cassent à chaque refactoring. Trop laxiste, ils laissent passer des régressions réelles.</description><pubDate>Fri, 06 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Property-Based Testing : arrêter de choisir ses exemples à la main</title><link>https://lacrafterie.tech/blog/property-based-testing/</link><guid isPermaLink="true">https://lacrafterie.tech/blog/property-based-testing/</guid><description>Les tests par l&apos;exemple ont une limite : on ne teste que ce à quoi on a pensé. Le Property-Based Testing retourne la question - au lieu de choisir des cas, on décrit des propriétés qui doivent être vraies pour n&apos;importe quelle entrée.</description><pubDate>Mon, 09 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Les 5 doublures de test : en finir avec la confusion sur les mocks</title><link>https://lacrafterie.tech/blog/stub-mock-fake-doublures-de-test/</link><guid isPermaLink="true">https://lacrafterie.tech/blog/stub-mock-fake-doublures-de-test/</guid><description>On appelle tout &apos;mock&apos;. Pourtant, il existe 5 types de doublures, chacune avec un rôle précis. Confondre un stub avec un mock ne coûte pas grand-chose au départ, jusqu&apos;au jour où tes tests deviennent impossibles à maintenir.</description><pubDate>Tue, 21 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Tell, Don&apos;t Ask : quand l&apos;encapsulation sauve votre codebase</title><link>https://lacrafterie.tech/blog/tell-dont-ask-encapsulation-objet/</link><guid isPermaLink="true">https://lacrafterie.tech/blog/tell-dont-ask-encapsulation-objet/</guid><description>Comment le principe Tell Don&apos;t Ask transforme du code fragile en architecture solide. Illustré avec un exemple concret de validation utilisateur qui part en vrille.</description><pubDate>Tue, 17 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Test After, Test First, TDD : ce que chaque approche garantit vraiment</title><link>https://lacrafterie.tech/blog/test-after-test-first-tdd/</link><guid isPermaLink="true">https://lacrafterie.tech/blog/test-after-test-first-tdd/</guid><description>TDD c&apos;est bien, tout le monde le dit. Mais pourquoi ? Et quand Test After ou Test First sont-ils légitimes ? Comparer les trois approches honnêtement change la manière dont on choisit.</description><pubDate>Tue, 09 Jun 2026 08:00:00 GMT</pubDate></item><item><title>Tests couplés à l&apos;implémentation : pourquoi vos tests cassent à chaque refactoring</title><link>https://lacrafterie.tech/blog/tests-implementation-vs-comportement/</link><guid isPermaLink="true">https://lacrafterie.tech/blog/tests-implementation-vs-comportement/</guid><description>Vos tests cassent dès que vous refactorez ? C&apos;est probablement parce qu&apos;ils testent l&apos;implémentation plutôt que le comportement. La différence change tout.</description><pubDate>Tue, 17 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Arrête de vérifier tes états, laisse le compilateur les interdire</title><link>https://lacrafterie.tech/blog/ton-champ-statut-te-ment-typestate/</link><guid isPermaLink="true">https://lacrafterie.tech/blog/ton-champ-statut-te-ment-typestate/</guid><description>Ce que plusieurs dojos de code sur le Tennis Kata m&apos;ont confirmé : la machine à états est sous-cotée dans les applications de gestion. Le kata écrit trois fois, et ce que chaque étape corrige.</description><pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate></item></channel></rss>