Fonction

Définition, exemples et bonnes pratiques

À retenir

  • Réutilisation : on définit le code une fois, on l'utilise à l'infini.
  • Modularité : permet de découper un gros logiciel en petits morceaux gérables.
  • Entrée/Sortie : elle accepte souvent des paramètres et renvoie généralement un résultat.

Une fonction est un bloc de code autonome et réutilisable conçu pour accomplir une tâche précise. On peut la comparer à une recette de cuisine : elle reçoit des ingrédients (données d'entrée), suit une série d'étapes, et produit un résultat final (donnée de sortie).

Étymologie

Issu du latin functio signifiant « accomplissement » ou « exécution ». En informatique, le terme s'est imposé pour désigner une unité logique qui exécute une mission spécifique au sein d'un programme.

Exemples d'usage

  • Une fonction calculer_moyenne() qui reçoit une liste de notes et renvoie le score moyen.
  • Une fonction est_majeur() qui vérifie l'âge d'un utilisateur et répond par "vrai" ou "faux".
  • La fonction print() en Python qui affiche un message sur l'écran.

Cas d'usage

Les fonctions interviennent partout en développement : pour structurer une application, éviter de copier-coller le même code plusieurs fois, ou encore masquer la complexité d'un calcul derrière un nom simple.

Bonnes pratiques

Privilégiez des fonctions courtes qui ne font qu'une seule chose à la fois. Utilisez des noms explicites (généralement des verbes comme enregistrerUtilisateur) et commentez toujours les paramètres attendus pour faciliter la lecture par d'autres développeurs.

Synonymes

sous-programme routine méthode (en objet) procédure

Antonymes

code monolithique instruction linéaire

Conseil

Si vous vous surprenez à copier-coller trois lignes de code identiques à deux endroits différents, c'est le signal qu'il est temps de créer une fonction pour regrouper ces instructions.

Questions fréquentes

Quelle est la différence entre une fonction et une procédure ?

Historiquement, une fonction renvoie obligatoirement un résultat, tandis qu'une procédure exécute des actions sans rien renvoyer. Aujourd'hui, la distinction est floue.

Peut-on appeler une fonction dans une autre fonction ?

Oui, c'est même la base de la programmation structurée. Une fonction peut même s'appeler elle-même : c'est la récursivité.