Précondition

Définition, exemples et bonnes pratiques

À retenir

  • Se vérifie impérativement AVANT le traitement.
  • Garantit que les données d'entrée sont valides.
  • Constitue la base d'un code robuste et sécurisé.

En programmation, une précondition est une règle ou une exigence qui doit impérativement être respectée avant qu'un morceau de code (comme une fonction) ne commence à s'exécuter. C'est comparable à une recette de cuisine : la précondition serait d'avoir tous les ingrédients prêts avant de commencer à cuisiner.

Étymologie

Vient du préfixe latin prae (« devant », « avant ») et de conditio (« règle », « situation »). En informatique, ce terme s'est imposé avec la notion de « programmation par contrat », où chaque fonction définit un contrat précisant ce qu'elle attend de l'appelant.

Exemples d'usage

  • Vérifier qu'un âge est supérieur à zéro avant d'enregistrer un utilisateur.
  • S'assurer qu'un fichier existe réellement avant d'essayer de l'ouvrir pour le lire.
  • Contrôler qu'une liste n'est pas vide avant de demander le premier élément.

Cas d'usage

On les retrouve dans le développement de logiciels pour éviter les bugs. Elles servent à valider les entrées de l'utilisateur, à sécuriser les accès aux bases de données ou à s'assurer que les paramètres envoyés à un algorithme sont cohérents.

Bonnes pratiques

Appliquez le principe du fail-fast : vérifiez vos préconditions dès la première ligne de votre fonction. Si une condition n'est pas remplie, stoppez immédiatement l'exécution avec un message d'erreur clair pour éviter que le programme ne se comporte de façon imprévisible plus loin.

Synonymes

condition préalable pré-requis clause d'entrée

Antonymes

postcondition

Conseil

Ne supposez jamais que les données que vous recevez sont correctes. En ajoutant systématiquement des préconditions simples, vous gagnerez des heures de débogage car vous saurez exactement où et pourquoi votre programme s'est arrêté.

Questions fréquentes

Qui est responsable du respect de la précondition ?

C'est généralement celui qui appelle la fonction qui doit s'assurer que les conditions sont remplies.

Quelle différence avec une postcondition ?

La précondition se vérifie avant l'action, tandis que la postcondition garantit un résultat spécifique après l'exécution.