Programmazione procedurale
La programmazione procedurale è basata sulla suddivisione del codice in funzioni e procedure. I dati e il programma sono nettamente separati tra loro.
Ogni operazione viene svolta da una routine che accetta in input degli argomenti (parametri) e restituisce eventualmente in output un risultato (valore di ritorno).
La routine è la logica del programma, mentre i parametri e il valore di ritorno sono i dati.
La programmazione procedurale è il primo paradigma di programmazione a diffondersi, caratterizza i vecchi linguaggi come il Fortran, Pascal, il Basic e il linguaggio C.
Nota. Il paradigma di programmazione procedurale viene successivamente superato con la programmazione orientata agli oggetti (Object Oriented Programming) in cui dati e programma si fondono in un'unica entità detta oggetto (object).
Limiti della programmazione procedurale
Uno dei principali limiti è la netta separazione tra i dati e le operazioni.
La separazione tra programma e dati è intuitiva ma poco efficace.
Esempio
Nel linguaggio C definisco la struttura dei dati
struct Persona {
const char* nome;
int eta;
}
Poi sviluppo il codice per elaborare i dati
int isMinorenne(struct Persona persona) {
return ( persona.eta < 18);
}
La definizione dei dati e le operazioni sui dati sono distinti tra loro.
Spesso si trovano distanti, sono definiti in codici e in momenti diversi.
E così via.