À retenir
- On définit l'objectif final, pas le chemin.
- Le code est souvent plus court, plus clair et moins sujet aux erreurs de logique pure.
- L'intelligence du "comment faire" est déléguée au langage ou au logiciel utilisé.
La programmation déclarative est une manière de coder où l'on décrit le résultat souhaité (le "quoi") plutôt que de lister chaque étape détaillée pour y arriver (le "comment"). C'est comme commander un plat au restaurant : vous précisez ce que vous voulez manger, mais vous ne dictez pas au chef comment couper les légumes ou régler la température du four.
Étymologie
Issu du latin declarare (« manifester », « faire savoir »). En informatique, ce terme s'oppose historiquement à la programmation impérative. Il désigne le fait de soumettre des déclarations ou des faits à un moteur d'exécution qui se chargera lui-même de la logique de résolution.
Exemples d'usage
- SQL : On écrit
SELECT nom FROM clients WHERE ville = 'Paris'pour obtenir une liste, sans programmer manuellement le parcours de chaque ligne de la base de données. - HTML : On déclare
<button>Valider</button>pour afficher un bouton, sans coder le dessin des bordures ou la gestion des pixels. - CSS : On indique que tous les titres doivent être bleus, et le navigateur s'occupe d'appliquer cette règle partout.
Cas d'usage
Ce concept est massivement utilisé dans le développement web pour créer des interfaces (React, Vue), dans la gestion de bases de données (SQL), et pour la configuration d'infrastructures (Terraform, Kubernetes) où l'on décrit l'état final voulu pour un serveur.
Bonnes pratiques
Privilégiez ce style pour rendre votre code plus lisible et plus facile à maintenir. Le piège classique est de vouloir mélanger une logique impérative (étapes manuelles) au milieu d'un système déclaratif, ce qui rend le comportement du programme difficile à prévoir.
Synonymes
Antonymes
Conseil
Pour bien comprendre ce concept, commencez par apprendre le SQL ou le CSS. Vous réaliserez vite qu'il est beaucoup plus puissant de décrire une intention que de gérer manuellement chaque micro-étape technique.
Questions fréquentes
Quelle est la différence avec la programmation impérative ?
La programmation impérative est une recette de cuisine (fais ceci, puis cela), tandis que la programmation déclarative est un bon de commande (je veux ce résultat).
Est-ce que c'est plus lent ?
Parfois, car on laisse la machine décider de la méthode. Cependant, les moteurs modernes (comme ceux du SQL) sont souvent plus doués que les humains pour optimiser l'exécution.