Définitions
Syntaxe : Structure du code
Sémantique : Signification du code
Sémantique : Signification du code
Deux aspects fondamentaux de la programmation
Syntaxe :
Règles de grammaire du langage
Structure correcte des instructions
Validée par le compilateur/interpréteur
Structure correcte des instructions
Validée par le compilateur/interpréteur
Sémantique :
Signification des instructions
Logique du programme
Erreurs logiques détectées à l'exécution
Logique du programme
Erreurs logiques détectées à l'exécution
Types d'erreurs
Syntaxique : code mal formé
Sémantique : code incorrect logiquement
Exemples concrets
# ERREUR SYNTAXIQUE
print("Bonjour"
# Manque une parenthèse fermante
# ERREUR SÉMANTIQUE
a = 10
b = 0
resultat = a / b # Division par zéro
Syntaxique : détectée avant exécution
Sémantique : détectée pendant exécution
Syntaxique : règles grammaticales
Sémantique : sens des opérations
Exemples supplémentaires
Python :
SyntaxError: invalid syntax
NameError: variable non définie
NameError: variable non définie
Java :
; manquant
Type mismatch
Type mismatch
Méthodes de détection
Analyseur syntaxique : structure
Tests unitaires : logique
IDE : mise en évidence des erreurs
Debuggage : comportement attendu
Revues de code : validation humaine
Erreurs Fréquentes
Erreur 1 :
Confondre syntaxe et sémantique
Erreur 2 :
Croire qu'une syntaxe correcte = programme correct
Erreur 3 :
Ne pas tester la logique du programme
Erreur 4 :
Ignorer les erreurs sémantiques détectées tardivement
Bonnes Pratiques
Programmation :
Respecter les conventions de codage
Utiliser des outils d'analyse statique
Faire des tests complets
Utiliser des outils d'analyse statique
Faire des tests complets
Validation :
Vérifier la syntaxe avant l'exécution
Tester toutes les branches logiques
Valider les cas limites
Tester toutes les branches logiques
Valider les cas limites