Programmation procédurale
Paradigme fondé sur le concept d'appel procédural.
Une procédure, aussi appelée routine, sous-routine ou fonction (ne pas confondre avec les fonctions de la programmation fonctionnelle reposant sur des fonctions mathématiques), contient simplement une série d'étapes à réaliser (instructions). L'appel d'une procédure peut avoir lieu à toute étape de l'exécution du programme, y compris à l'intérieur d'autres procédures, voire dans la procédure elle-même (récursivité).
Avantages
non spaghetti (structuration du programme)
- meilleur choix qu'une simple programmation séquentielle ;
- possibilité de réutiliser le même code (factorisation) ⇒ maintenabilité, évolutivité ;
- modularité/découpage fonctionnel.
- Langages : ADA, Basic, Fortran, Cobol, Perl, C, ColdFusion, Pascal, PHP (<5)…
Procédure et fonction
- Procédure principale (programme)
- Sous procédures (procédures et fonctions)
Notions
- Prototype et définition (signature) ⇒ nom, type et nom des paramètres formels, type de retour
- Paramètres formels et effectifs
- Paramètres positionnels ou nommés
- Passage par valeur, par référence
- Portée des variables (locales/globales)
Phases de conception
- Identification du cadre et des objectifs du développement, en inventoriant les fonctionnalités nécessaires, les tenants et les aboutissants, les règles explicites ou implicites, les cas tordus, etc. ⇒ cahier des charges, spécifications
- Découpage de l'application en modules fonctionnels (analyse fonctionnelle).
- Analyse de l'enchaînement logique des traitements de chaque (sous-)procédure ou fonction : algorithmique.
- Ecriture du code (implémentation)
- Tests (unitaires, fonctionnels, d'acceptance…)
- Mise en production