Sottoprogrammi


imageUn programma può diventare molto lungo... per migliorare la leggibilità si può ricorrere a delle linee vuote oppure separare i blocchi di codice che si ripetono dal flusso principale del codice...

 
imageSe a questi blocchi di codice si da un nome e si separano dal programma principale (prima o dopo dipende dal linguaggio) diventano dei sottoprogrammi

 
imageSi può immaginare un sottoprogramma come uno strumento del quale si conoscono il nome e la funzionalità ma non l'implementazione

 
La terminologia cambia a seconda del paradigma/linguaggio di programmazione che si utilizza
BasicSottoprogramma
Sub XYZ()
    ...
End Sub
PascalProcedura
Procedure XYZ
...
Begin
    ...
End;
CFunzione
void XYZ()
{
    ...
}
JavaMetodo


Chiamata e ritorno

imagePer passare il controllo al sottoprogramma è necessario chiamarlo
BasicSottoprogramma
Sub XYZ()
    ...
End Sub
...
Call XYZ()
...
PascalProcedura
Procedure XYZ
...
Begin
    ...
End;
...
XYZ;
...
CFunzione
void XYZ()
{
    ...
}
...
XYZ();
...
JavaMetodo


imageIl controllo ritorna al chiamante quando si giunge all'etichetta di fine del sottoprogramma

 
imageDiventa tutto più chiaro se si disegnano i sottoprogrammi di lato piuttosto che prima o dopo...

 
imageIl blocco principale non ha l'esclusiva di fare le chiamate, anzi ogni sottoprogramma può chiamare tutti gli altri sottoprogrammi

 

Istruzione di ritorno

imageSe necessario, la fine di un sottoprogramma può essere richiesta esplicitamente con un'istruzione di uscita/ritorno
Basic
Sub XYZ()
    ...
    If(...) Then
        Exit Sub
    ...
End Sub
C
void XYZ()
{
    ...
    if(...)
        return;
    ...
}

There are no comments on this page.
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki