Aller au contenu
🌟 Le livre intégral numérique est disponible : téléchargement dès l’achat 🌟
Développement

Préférer le déclaratif sur l'impératif

Plutôt que d'indiquer à la machine avec une approche impérative les étapes successives à exécuter, il est préférable de déclarer, de formuler le problème à résoudre. Le développeur n'exprime donc plus le comment, il exprime le quoi. La responsabilité de la machine est d'interpréter l'énoncé du problème, puis de le résoudre de manière efficace.

Retours d’expérience de la communauté

Règles de calcul des impôts français

François-Guillaume Ribreau

Avant l’application du principe

Les règles de calcul des impôts français pourraient reposer sur un grand nombre de conditions dissimulées dans le code-source de impots.gouv.fr.

La mise à jour de ces règles de calcul demanderait à chaque fois le besoin de demander l'évolution à un/des développeur(s) ce qui serait à la fois long et couteux.

Pourquoi passer par du développement pour mettre à jour des règles de calcul d'impôt ?

‍

Après l’application du principe

En réalité, l'équipe technique derrière le service des impôts français a préféré développer un langage dédié (DSL) nommé "M" pour faciliter la maintenance de ces règles https://gitlab.adullact.net/dgfip/ir-calcul/-/tree/master/

Nous pouvons même imaginer — si cela n'existe pas déjà la bas — la création d'un éditeur visuel permettant à des non-techniques de mettre à jour ces règles comme nous avons l'habitude d'éditer des formules d'un tableur par exemple.

‍

Code-règles

Francois-Guillaume Ribreau

Avant l’application du principe

Coder en dur, avec des conditions et du code les règles d'un programme.

Après l’application du principe

Permettre à des administrateurs de spécifier sous forme de règle et/ou de formule, via une UI ou une API les règles qui seront ensuite interprétées au sein du programme.

Explicite & Déclaratif > Implicite & Impératif

Et vous, quelles sont vos retours d’expérience ?

Si votre retour est validé, il sera prochainement publié sur le site.

Dans la même veine — clique, rebondis.