La programmazione strutturata rappresenta la naturale estensione dell' approccio top-down al processo di scrittura del codice. Questo in quanto la chiarezza e la strutturazione di un algoritmo progettato con un'analisi top-down, dovrebbe essere mantenuta dal codice che lo realizza. L'idea quindi è scomporre il codice in parti più semplici senza lasciare che i dettagli di ciascuna parte del codice interferiscano con lo sviluppo del programma nel suo complesso. Ciascuno dei compiti elementari rappresenta un '"attività di processo" (process activity), mentre i requisiti non elementari si chiamano "attività di gestione" (management activity). In generale, ciascuna attività di gestione comprende un costrutto di controllo, come una decisione (se si verifica questa condizione, fai questa cosa), una selezione (a seconda dei casi, fai questo, questo, o quest'altro) o un'iterazione (ripeti quest'attività fino a ottenere questa condizione). Una volta effettuata la scomposizione del programma, è necessario ricombinare o "integrare" tutte le attività identificate in componenti funzionali o moduli. Ci sono molti fattori da prendere in considerazione per scegliere quali attività debbano essere integrate nello stesso modulo:
dimensione, alcuni autori suggeriscono che ogni modulo dovrebbe avere una dimensione tale da permettere al programmatore di vederlo tutto in una sola schermata;
profondità, un modulo non dovrebbe contenere più di tre livelli di strutture di controllo una dentro l'altra, e possibilmente di meno;
fase temporale, tutte le attività integrate in un modulo dovrebbero riguardare la stessa fase concettuale dell'algoritmo che viene realizzato;
stessa base condizionale, tutte le attività integrate nello stesso modulo dovrebbero essere eseguite nelle stesse condizioni;
condivisione dei dati, tutte le attività integrate nello stesso modulo dovrebbero lavorare sugli stessi dati;
coesione funzionale, ciascun modulo dovrebbe essere volto ad ottenere un solo scopo specifico o a realizzare una ben precisa funzionalità.
La programmazione strutturata pone dei vincoli ai modi in cui l'esecuzione di attività di processo possa essere controllata. I costrutti di controllo fondamentali sono:
esecuzione seriale, cioè un'attività dopo l'altra;
iterazione, cioè ripetizione di un'attività;
selezione, cioè a seconda di una condizione, l' esecuzione di una alternativa scelta tra due o più attività.
Sebbene in linea di principio sia possibile, da parte di un programmatore disciplinato, programmare un modo strutturato utilizzando un linguaggio di tipo assembly, certamente sarà più comodo utilizzare un linguaggio cosiddetto "di alto livello", che fornisca i costrutti necessari per la programmazione strutturata come elementi di base della sua sintassi.
Tutto quanto riportato in questa pagina è a puro scopo informativo personale. Se non ti trovi in accordo con quanto riportato nella pagina, vuoi fare delle precisazioni, vuoi fare delle aggiunte o hai delle proposte e dei consigli da dare, puoi farlo mandando un email. Ogni indicazione è fondamentale per la continua crescita del sito.