Aller au contenu
studuel

NSI · Première · Génie logiciel

Fonctions et structure du code

Découper pour mieux maîtriser.

En bref

Une fonction nomme un traitement pour le réutiliser.

Une fonction nomme un traitement pour le réutiliser. C'est le premier outil de lutte contre la complexité.

Pourquoi découper

Le bénéficeCe qu'il permet
RéutiliserUne correction faite une fois vaut partout
TesterChaque morceau séparément
LireUn nom bien choisi remplace dix lignes à déchiffrer
RépartirLe travail entre plusieurs personnes

Paramètres et retour

Le motCe qu'il désigne
ParamètreLe nom figurant dans la définition
ArgumentLa valeur passée à l'appel
RetourLa valeur rendue ; en Python, None si aucune

Erreur classique : afficher au lieu de retourner. Une fonction qui affiche ne peut pas être réutilisée dans un calcul — la valeur est partie à l'écran, elle n'est plus disponible.

Portée des variables

La variableOù elle existeCe qu'elle vaut
LocaleDans la fonction seulementLe bon usage
GlobalePartoutElle crée des dépendances invisibles entre parties du programme

Une fonction doit recevoir ce dont elle a besoin par ses paramètres et rendre son résultat par son retour.

Les effets de bord

Une fonction a un effet de bord si elle modifie autre chose que sa valeur de retour : une variable globale, une liste reçue en argument, un fichier.

Ce n'est pas interdit, mais cela doit être voulu et documenté. Une fonction qui modifie sournoisement la liste qu'on lui passe produit des bugs très difficiles à localiser.

Spécifier une fonction

La questionCe qu'elle précise
Que fait-elle ?Son objet, en une phrase
Que reçoit-elle ?Types et préconditions
Que rend-elle ?Type et signification
Qu'est-ce qui est garanti ?Les postconditions

En Python, tout cela s'écrit dans la docstring, la chaîne placée juste sous la ligne de définition.

Les assertions vérifient une précondition à l'exécution : elles arrêtent le programme au bon endroit, plutôt que de le laisser produire un résultat faux dix étapes plus loin.

Teste-toi

6 questions pour vérifier

Touche une réponse : la correction s’affiche tout de suite.

  1. 1.Quelle est la différence entre un paramètre et un argument ?

  2. 2.Pourquoi vaut-il mieux retourner une valeur que l’afficher ?

  3. 3.Une variable définie dans une fonction est visible à l’extérieur.

  4. 4.Qu’est-ce qu’un effet de bord ?

  5. 5.Que contient une spécification complète de fonction ?

  6. 6.À quoi sert une assertion ?

0 / 6 questions

Dans l’app, ce chapitre a son quiz complet, chronométré, et tes erreurs reviennent au bon moment pour ne plus les refaire.

Continuer dans l’app
Aperçu flouté de la fiche de révision

La fiche de révision, sur une page

Tout « Fonctions et structure » sur une seule page A4 illustrée : l’essentiel, les pièges et un mini-test. Elle se débloque dans l’app avec des gemmes — et ton compte gratuit en offre assez pour tes trois premières fiches.

Débloquer la fiche dans l’app

Dans le même thème

NSI en première : passe à l’entraînement.

Le quiz complet, les exercices corrigés, les duels contre des élèves de ton niveau et un coach IA qui t’explique ce qui bloque.

Commencer gratuitement