Subroutine
Una subroutine è una porzione di programma racchiusa in un blocco di istruzioni (sequenza).
Normalmente le subroutine hanno un nome e dei parametri (o argomenti). Una subroutine può anche non avere parametri.
Le subroutine possono essere richiamate semplicemente utilizzando il loro nome; nella maggior parte dei linguaggi di programmazione gli argomenti vengono racchiusi tra parentesi.
Quando l'elaboratore incontra il nome di una subroutine:
- memorizza il punto in cui è arrivato nella sequenza attuale
- "salta" automaticamente al punto in cui la subroutine inizia
- esegue la sequenza contenuta nella subroutine
- ritorna al punto memorizzato in partenza, e riprende l'esecuzione della sequenza iniziale
Gli argomenti hanno un nome, e sono a tutti gli effetti delle variabili che contengono dei valori decisi all'atto della chiamata, a cui la subroutine accede per eseguire le proprie elaborazioni.
Quando la subroutine restituisce al codice chiamante uno o più valori, viene denominata funzione. Il programma chiamante può anche ignorare i valori restituiti e chiamare la funzione solo perché questa esegua le operazioni desiderate (i cosiddetti effetti collaterali). Questa maggiore flessibilità delle funzioni rispetto alle subroutine ha fatto sì che in alcuni linguaggi di programmazione il loro uso è divenuto generalizzato.
