Specifiche Sun

Istruzioni

 

7. Istruzioni

7.1. Istruzioni semplici
Ogni linea deve contenere al massimo un’istruzione. Ad esempio:

argv++;             // Corretto
argc++;             // Corretto
argv++; argc--;     // EVITARE!


7.2. Istruzioni composte
Le istruzioni composte sono istruzioni che contengono liste di comandi racchiusi tra parentesi graffe:

{
    istruzioni
}


Vedi le sezioni seguenti per gli esempi.

Le istruzioni racchiuse dovrebbero essere indentate ad un ulteriore livello rispetto all’istruzione composta.
La parentesi graffa aperta dovrebbe stare alla fine della linea che inizia l’istruzione composta; la parentesi graffa chiusa dovrebbe iniziare una linea ed essere indentata verticalmente con l’inizio dell’istruzione composta.
Le parentesi graffe sono usate per tutte le istruzioni, anche quelle singole, quando sono parte di una struttura di controllo, come nelle istruzioni if-else o for. Questo rende più semplice aggiungere istruzioni senza introdurre accidentalmente errori dovuti alla dimenticanza di aggiungere anche le parentesi graffe.

7.3. Istruzioni return
Un’istruzione return con un valore non dovrebbe usare parentesi a meno che queste rendano, in qualche modo, il valore ritornato più ovvio. Ad esempio:

return;

return mioDisco.dimensione();

return (dimensione ? dimensione : dimensioneStandard);


7.4. Istruzioni if, if-else, if else-if else
La classe di istruzioni if-else deve avere la seguente forma:

if (condizione) {
    istruzioni;
}

if (condizione) {
    istruzioni;
} else {
    istruzioni;
}

if (condizione) {
    istruzioni;
} else if (condizione) {
    istruzioni;
} else {
    istruzioni;
}

Note: Le istruzioni if usano sempre le parentesi graffe {}. Evitare la seguente forma:

if (condizione) //EVITARE! QUESTO OMETTE LE PARENTESI GRAFFE {}!
    istruzione;


7.5. Istruzioni for
Un’istruzione for dovrebbe avere la seguente forma:

for (inizializzazione; condizione; aggiornamento) {
    istruzioni;
}


Un’istruzione for vuota (in cui tutto il lavoro è dato dalle clausole inizializzazione, condizione e aggiornamento) dovrebbe avere la seguente forma:

for (inizializzazione; condizione; aggiornamento);


Quando si usa l’operatore virgola nella clausola di inizializzazioen o aggiornamento di un’istruzione for, evitare la complessità di utilizzare più di tre variabili. Se necessario, usare istruzioni separate prima del ciclo for (per la clausola di inizializzazione) o alla fine del ciclo (per la clausola aggiornamento).

7.6. Istruzioni while
Un’istruzione while dovrebbe avere la seguente forma:

while (condizione) {
    istruzioni;
}


Un’istruzione while vuota dovrebbe avere la seguente forma:

while (condizione);

7.7. Istruzioni do-while

Un’istruzione do-while dovrebbe avere la seguente forma:

do {
    istruzioni;
} while (condizione);


7.8. Istruzioni switch
Un’istruzione switch dovrebbe avere la seguente forma:

switch (condizione) {
case ABC:
    istruzioni;
    /* prosegue oltre */
case DEF:
    istruzioni;
    break;
case XYZ:
    istruzioni;
    break;
default:
    istruzioni;
    break;
}

Ogni volta che un caso non include l’istruzione break, e quindi prosegue nel caso successivo, aggiungere un commento nel punto in cui normalmente dovrebbe esserci l’istruzione break. Questo è mostrato nel codice d’esempio precedente con il commento /* prosegue oltre */.

Ogni istruzione switch dovrebbe includere un caso di default. Nel caso di default l’istruzione break è ridondante, ma previene un errore nel caso che in seguito venga aggiunto un altro case.

7.9. Istruzioni try-catch
Un’istruzione try-catch dovrebbe avere il seguente formato:

try {
    istruzioni;
} catch (ClasseEccezione e) {
    istruzioni;
}


Un’istruzione try-catch può inoltre essere seguita da finally, che viene eseguita indipendentemente dal fatto che il blocco try sia stato o meno completato con successo.

try {
    istruzioni;
} catch (ClasseEccezione e) {
    istruzioni;
} finally {
    istruzioni;
}

 

Torna all'indice Generale del corso di Specifiche Sun di Software Planet