Numérique et Sciences Informatiques • 1ère

Fonctions et modularité

Définitions
Fonction = Bloc réutilisable de code
Encapsulation d'un ensemble d'instructions
Fonction :
Ensemble d'instructions
Paramètres d'entrée
Valeur(s) de retour
Réutilisable plusieurs fois
Modularité :
Découpage en modules
Indépendance des parties
Maintenance facilitée
Lisibilité améliorée
Structure d'une fonction
🏷️
Nom : identifie la fonction
📦
Paramètres : données en entrée
⚙️
Corps : instructions exécutées
📤
Retour : résultat de la fonction
Exemples de fonctions
def carre(nombre):
    """Calcule le carré d'un nombre"""
    resultat = nombre * nombre
    return resultat

def est_pair(nombre):
    """Vérifie si un nombre est pair"""
    return nombre % 2 == 0

# Appel de fonction
x = carre(5)  # x = 25
y = est_pair(4)  # y = True
🔄
Réutilisabilité : appel multiple
🔍
Testabilité : facile à tester
📋
Documentation : commentaires clairs
🔧
Maintenance : modification ciblée
Portée des variables
🔒
Locale : dans la fonction
🌍
Globale : accessible partout
⚠️
Préférer les variables locales
Avantages de la modularité
🧩
Découpage du problème en sous-problèmes
🔄
Réutilisation du code existant
🔍
Tests unitaires facilités
👥
Travail collaboratif possible
🛠️
Maintenance et évolution simplifiées
Erreurs Fréquentes
Erreur 1 :
Fonctions trop longues et complexes
Erreur 2 :
Utilisation excessive de variables globales
Erreur 3 :
Noms de fonctions peu descriptifs
Erreur 4 :
Oubli de la documentation des fonctions
Bonnes pratiques
Création de fonctions :
Une seule responsabilité par fonction
Noms clairs et descriptifs
Documentation systématique
Organisation du code :
Modules logiques
Regroupement par thème
Respect des conventions
Structure du code Génie logiciel