<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Software Development on Spaghetti Code 🍝</title>
    <link>https://spaghetti-code.net/fr/tags/software-development/</link>
    <description>Recent content in Software Development on Spaghetti Code 🍝</description>
    <image>
      <title>Spaghetti Code 🍝</title>
      <url>https://spaghetti-code.net/images/og-default.png</url>
      <link>https://spaghetti-code.net/images/og-default.png</link>
    </image>
    <generator>Hugo -- 0.160.0</generator>
    <language>fr</language>
    <lastBuildDate>Wed, 04 Nov 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://spaghetti-code.net/fr/tags/software-development/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Table de Hachage : Comment le Hachage Fonctionne</title>
      <link>https://spaghetti-code.net/fr/posts/fundamentals/quest-ce-quune-table-de-hachage/</link>
      <pubDate>Wed, 04 Nov 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/fundamentals/quest-ce-quune-table-de-hachage/</guid>
      <description>Une table de hachage transforme une clé en index de tableau en temps constant, jusqu&amp;#39;à la collision : hachage, chaînage, adressage ouvert et facteur de charge.</description>
    </item>
    <item>
      <title>Ownership et Borrowing en Rust Expliqués</title>
      <link>https://spaghetti-code.net/fr/posts/rust/ownership-et-borrowing-en-rust/</link>
      <pubDate>Tue, 03 Nov 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/rust/ownership-et-borrowing-en-rust/</guid>
      <description>Les règles d&amp;#39;ownership et de borrowing de Rust évitent use-after-free et data races à la compilation : move, trait Copy, références et lifetimes expliqués.</description>
    </item>
    <item>
      <title>Mock, Stub, Fake et Spy : les Test Doubles Expliqués</title>
      <link>https://spaghetti-code.net/fr/posts/testing/quest-ce-qu-un-test-double/</link>
      <pubDate>Mon, 02 Nov 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/testing/quest-ce-qu-un-test-double/</guid>
      <description>Dummy, stub, spy, fake et mock sont cinq test doubles qui vérifient des choses différentes. Une classe Python, testée des cinq façons, montre lequel choisir.</description>
    </item>
    <item>
      <title>ESLint vs Prettier : Différences et Comment les Combiner</title>
      <link>https://spaghetti-code.net/fr/posts/javascript/eslint-vs-prettier-differences/</link>
      <pubDate>Sun, 01 Nov 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/javascript/eslint-vs-prettier-differences/</guid>
      <description>ESLint détecte les bugs dans votre code, Prettier se contente de le reformater. Pourquoi les deux ensemble causent des conflits, et comment éviter ça.</description>
    </item>
    <item>
      <title>Expressions Régulières : Comment le Regex Fonctionne</title>
      <link>https://spaghetti-code.net/fr/posts/fundamentals/expressions-regulieres-expliquees/</link>
      <pubDate>Wed, 28 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/fundamentals/expressions-regulieres-expliquees/</guid>
      <description>Un moteur regex lit le motif jeton par jeton et revient en arrière sur échec, pas toute la chaîne d&amp;#39;un coup. Comment ça fonctionne, pourquoi ça bloque parfois.</description>
    </item>
    <item>
      <title>Les Generics TypeScript Expliqués avec des Exemples</title>
      <link>https://spaghetti-code.net/fr/posts/typescript/generics-typescript-explique/</link>
      <pubDate>Tue, 27 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/typescript/generics-typescript-explique/</guid>
      <description>Les generics TypeScript conservent le type que vous passez au lieu de le réduire à any. Comment fonctionnent l&amp;#39;inférence, extends, keyof et les défauts.</description>
    </item>
    <item>
      <title>Exceptions vs Valeurs d&#39;Erreur : Quelle Stratégie Choisir</title>
      <link>https://spaghetti-code.net/fr/posts/clean-code/exceptions-vs-valeurs-derreur/</link>
      <pubDate>Mon, 26 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/clean-code/exceptions-vs-valeurs-derreur/</guid>
      <description>Exceptions et valeurs d&amp;#39;erreur résolvent le même problème de deux façons, avec des compromis réels en Python, Go et Rust pour choisir la bonne approche.</description>
    </item>
    <item>
      <title>Rate Limiting d&#39;API : Algorithmes et Comment le Construire</title>
      <link>https://spaghetti-code.net/fr/posts/backend/rate-limiting-api/</link>
      <pubDate>Fri, 23 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/backend/rate-limiting-api/</guid>
      <description>Comment fonctionne le rate limiting d&amp;#39;API : fixed window, sliding window, token bucket et leaky bucket comparés, avec une implémentation Redis et headers 429.</description>
    </item>
    <item>
      <title>Intersection Observer : Lazy Loading et Scroll Infini</title>
      <link>https://spaghetti-code.net/fr/posts/javascript/intersection-observer-lazy-loading/</link>
      <pubDate>Wed, 21 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/javascript/intersection-observer-lazy-loading/</guid>
      <description>Comment l&amp;#39;Intersection Observer API remplace le scroll avec debounce pour le lazy loading d&amp;#39;images et le scroll infini, avec rootMargin et threshold expliqués.</description>
    </item>
    <item>
      <title>Qu&#39;est-ce qu&#39;Unicode et Comment Fonctionne l&#39;UTF-8</title>
      <link>https://spaghetti-code.net/fr/posts/fundamentals/quest-ce-que-unicode-et-l-encodage-utf-8/</link>
      <pubDate>Tue, 20 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/fundamentals/quest-ce-que-unicode-et-l-encodage-utf-8/</guid>
      <description>Unicode numérote chaque caractère ; l&amp;#39;UTF-8 transforme ce numéro en 1 à 4 octets. Pourquoi string.length se trompe et d&amp;#39;où viennent les bugs d&amp;#39;encodage.</description>
    </item>
    <item>
      <title>Les Closures en JavaScript Expliquées avec des Exemples</title>
      <link>https://spaghetti-code.net/fr/posts/javascript/closures-javascript-expliquees/</link>
      <pubDate>Mon, 19 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/javascript/closures-javascript-expliquees/</guid>
      <description>Une closure en JavaScript lie une fonction aux variables de son contexte de création, même après la fin de ce code. Comment elles marchent, où elles cassent.</description>
    </item>
    <item>
      <title>Qu&#39;est-ce que le TDD et Comment Marche le Red-Green-Refactor</title>
      <link>https://spaghetti-code.net/fr/posts/testing/quest-ce-que-le-tdd/</link>
      <pubDate>Sun, 18 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/testing/quest-ce-que-le-tdd/</guid>
      <description>Le développement piloté par les tests écrit un test qui échoue avant le code, le fait réussir, puis nettoie : le cycle red-green-refactor, avec un kata Python.</description>
    </item>
    <item>
      <title>JWT ou Session : Quelle Authentification Choisir</title>
      <link>https://spaghetti-code.net/fr/posts/backend/differences-jwt-session/</link>
      <pubDate>Fri, 16 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/backend/differences-jwt-session/</guid>
      <description>Les sessions gardent l&amp;#39;état de connexion sur le serveur, les JWT le signent dans le token. Comment chacun fonctionne dans Node et quand choisir l&amp;#39;un ou l&amp;#39;autre.</description>
    </item>
    <item>
      <title>Gestion des Erreurs avec la Fetch API en JavaScript</title>
      <link>https://spaghetti-code.net/fr/posts/javascript/gestion-erreurs-fetch-api-javascript/</link>
      <pubDate>Wed, 14 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/javascript/gestion-erreurs-fetch-api-javascript/</guid>
      <description>fetch() se résout même sur un 404 ou un 500, donc try/catch laisse passer l&amp;#39;erreur. Comment vérifier response.ok, lire le corps d&amp;#39;erreur et ajouter un timeout.</description>
    </item>
    <item>
      <title>La Récursivité Expliquée: Quand l&#39;Utiliser et Quand l&#39;Éviter</title>
      <link>https://spaghetti-code.net/fr/posts/fundamentals/recursivite-expliquee/</link>
      <pubDate>Tue, 13 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/fundamentals/recursivite-expliquee/</guid>
      <description>La récursivité expliquée avec du vrai code : la pile d&amp;#39;appels, le cas de base, quand elle bat une boucle, pourquoi Python et JS plantent, et la mémoïsation.</description>
    </item>
    <item>
      <title>CSS Grid ou Flexbox : quand utiliser lequel</title>
      <link>https://spaghetti-code.net/fr/posts/css/css-grid-ou-flexbox-quand-utiliser/</link>
      <pubDate>Mon, 12 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/css/css-grid-ou-flexbox-quand-utiliser/</guid>
      <description>Flexbox aligne une seule ligne, CSS Grid gère lignes et colonnes ensemble. La règle de décision, avec du code pour navbars, dashboards et grilles de cartes.</description>
    </item>
    <item>
      <title>Goroutines et Channels en Go : Guide avec Exemples</title>
      <link>https://spaghetti-code.net/fr/posts/go/goroutines-et-channels-en-go/</link>
      <pubDate>Sun, 11 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/go/goroutines-et-channels-en-go/</guid>
      <description>Les goroutines et les channels gèrent la concurrence en Go : lancer du travail avec go, channels bufferisés, select, et éviter les leaks et deadlocks courants.</description>
    </item>
    <item>
      <title>Les Principes SOLID Expliqués avec des Exemples en Python</title>
      <link>https://spaghetti-code.net/fr/posts/clean-code/principes-solid/</link>
      <pubDate>Sat, 10 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/clean-code/principes-solid/</guid>
      <description>Les principes SOLID sont cinq règles pour structurer les classes afin qu&amp;#39;un changement ne se propage pas partout, illustrées en Python avant et après.</description>
    </item>
    <item>
      <title>Qu&#39;est-ce qu&#39;une Race Condition et Comment la Corriger</title>
      <link>https://spaghetti-code.net/fr/posts/fundamentals/quest-ce-qu-une-race-condition/</link>
      <pubDate>Fri, 09 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/fundamentals/quest-ce-qu-une-race-condition/</guid>
      <description>Une race condition apparaît quand le résultat dépend d&amp;#39;un timing non maîtrisé : où elle se cache entre threads, async, bases de données, et comment la corriger.</description>
    </item>
    <item>
      <title>Debounce vs Throttle en JavaScript : Quand Utiliser Chacun</title>
      <link>https://spaghetti-code.net/fr/posts/javascript/difference-debounce-throttle-javascript/</link>
      <pubDate>Thu, 08 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/javascript/difference-debounce-throttle-javascript/</guid>
      <description>Debounce vs throttle en JavaScript : le debounce attend que les événements s&amp;#39;arrêtent, le throttle les exécute à rythme constant. Comment choisir entre les deux</description>
    </item>
    <item>
      <title>Décorateurs Python Expliqués avec des Exemples</title>
      <link>https://spaghetti-code.net/fr/posts/python/decorateurs-python-expliques/</link>
      <pubDate>Wed, 07 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/python/decorateurs-python-expliques/</guid>
      <description>Comment fonctionnent les décorateurs Python : syntaxe @, functools.wraps, décorateurs avec arguments, décorateurs de classe et lru_cache, avec exemples.</description>
    </item>
    <item>
      <title>Pourquoi 0.1 &#43; 0.2 Ne Fait Pas 0.3 : la Virgule Flottante</title>
      <link>https://spaghetti-code.net/fr/posts/fundamentals/pourquoi-0-1-plus-0-2-ne-fait-pas-0-3/</link>
      <pubDate>Tue, 06 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/fundamentals/pourquoi-0-1-plus-0-2-ne-fait-pas-0-3/</guid>
      <description>La virgule flottante ne stocke presque aucun décimal exact : 0.1 &#43; 0.2 donne 0.30000000000000004 au lieu de 0.3. Pourquoi, et comment comparer ces nombres.</description>
    </item>
    <item>
      <title>La Notation Big O Expliquée avec des Exemples de Code</title>
      <link>https://spaghetti-code.net/fr/posts/fundamentals/notation-big-o/</link>
      <pubDate>Sun, 04 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/fundamentals/notation-big-o/</guid>
      <description>La notation Big O mesurée avec du code réel : fonctions chronométrées à mesure que l&amp;#39;entrée grandit, et comment repérer un O(n^2) caché avant la production.</description>
    </item>
    <item>
      <title>Git Reset vs Revert vs Restore : quelle commande utiliser</title>
      <link>https://spaghetti-code.net/fr/posts/git/differences-reset-revert-restore-git/</link>
      <pubDate>Sat, 03 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/git/differences-reset-revert-restore-git/</guid>
      <description>Git reset, revert et restore annulent chacun un changement à un stade différent : fichier modifié, indexé, commit local ou déjà poussé. Comment choisir.</description>
    </item>
    <item>
      <title>Qu&#39;est-ce que la Dependency Injection (avec Exemples)</title>
      <link>https://spaghetti-code.net/fr/posts/clean-code/quest-ce-que-la-dependency-injection/</link>
      <pubDate>Thu, 01 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/clean-code/quest-ce-que-la-dependency-injection/</guid>
      <description>La Dependency Injection fournit ses dépendances à une classe au lieu de les laisser construire. Constructor injection, lifetimes ASP.NET Core, ce qui la casse.</description>
    </item>
    <item>
      <title>Tests Unitaires vs Tests d&#39;Intégration vs Tests End-to-End</title>
      <link>https://spaghetti-code.net/fr/posts/testing/tests-unitaires-vs-integration-vs-end-to-end/</link>
      <pubDate>Tue, 29 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/testing/tests-unitaires-vs-integration-vs-end-to-end/</guid>
      <description>Tests unitaires, d&amp;#39;intégration et end-to-end détectent des bugs différents : une inscription Flask testée aux trois niveaux, mocks vs fakes et e2e instables.</description>
    </item>
    <item>
      <title>Async/Await et l&#39;Event Loop de JavaScript Expliqués</title>
      <link>https://spaghetti-code.net/fr/posts/javascript/async-await-et-event-loop-javascript/</link>
      <pubDate>Mon, 28 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/javascript/async-await-et-event-loop-javascript/</guid>
      <description>Comment async/await fonctionne sur l&amp;#39;event loop JavaScript, pourquoi une promise bat setTimeout(0), et corriger await oubliés, boucles lentes et forEach async.</description>
    </item>
    <item>
      <title>Qu&#39;est-ce que CORS et Comment Résoudre les Erreurs CORS</title>
      <link>https://spaghetti-code.net/fr/posts/web/quest-ce-que-cors-comment-resoudre-les-erreurs-cors/</link>
      <pubDate>Sat, 26 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/web/quest-ce-que-cors-comment-resoudre-les-erreurs-cors/</guid>
      <description>Pourquoi le navigateur bloque votre fetch avec une erreur CORS, ce que restreint la same-origin policy, et comment la résoudre avec Express et ASP.NET Core.</description>
    </item>
    <item>
      <title>Configurer le Débogage à Distance dans Visual Studio</title>
      <link>https://spaghetti-code.net/fr/posts/debugging/debogage-a-distance-dans-visual-studio/</link>
      <pubDate>Wed, 23 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/fr/posts/debugging/debogage-a-distance-dans-visual-studio/</guid>
      <description>Configurez le débogage à distance dans Visual Studio avec msvsmon : installez les outils distants, ouvrez le bon port, faites correspondre les symboles.</description>
    </item>
  </channel>
</rss>
