Dovrei usare codice ridondante, ad es. altrimenti per renderlo più leggibile [duplicato]

-2

Devo lasciare la clausola else in un caso come questo in cui il compilatore segna il resto come codice ridondante e il resto rende il codice più logico - > meglio leggibile?

if (aCondition){
    doStuff();
    return someMethodResult();
}
else {
    doOtherStuff();
    return someOtherMethodResult();
}

o

if (aCondition){
    doStuff();
    return someMethodResult();
}
doOtherStuff();
return someOtherMethodResult();'
    
posta Tobias Brohl 15.02.2018 - 23:26
fonte

2 risposte

1

Dipende dalla semantica di aCondition .

La mia linea guida è che il percorso di esecuzione standard / normale dovrebbe rimanere nel livello di nidificazione superiore e che i percorsi condizionali dovrebbero essere trovati su livelli di nidificazione più profondi.

Se aCondition verifica un caso particolare, return someMethodResult(); è un ritorno anticipato e il codice rimanente è il normale percorso di esecuzione. Qui preferisco il secondo approccio (solo assicurandoti che l'istruzione return sia ben visibile, come hai fatto tu), poiché qui il normale percorso di esecuzione rimane al livello di nidificazione superiore.

Se si tratta solo di due casi diversi, userei il ridondante else , perché qui entrambi i percorsi sono condizionali, nessuno di loro può essere chiamato normale. Quindi in questo caso mi piace avere entrambi i rientri.

    
risposta data 16.02.2018 - 20:36
fonte
1

Per quanto riguarda gli elementi ridondanti dopo i resi: Dipende . Quello che sembra "più familiare" è probabilmente il più leggibile. Segui lo stile utilizzato nel tipico codice esistente nella tua lingua.

Nel tipico codice C / Java, molti lascerebbero fuori il resto ridondante. (Tenderei a lasciarlo, YMMV)

Ma, nel codice JavaScript asincrono / callbacky, come node.js, è abbastanza comune mettere "return" ovunque, ad es.

return callback(err, result);

dove il "ritorno" è non per restituire effettivamente un valore, ma per prevenire la caduta.

Inoltre, con Promises, devi rimandare la maggior parte dei punti :-), in modo da restituire la Promessa.

In questo stile di codice, i tuoi occhi spesso "sorvolano" il ritorno, quindi l'altro ridondante è molto utile.

    
risposta data 16.02.2018 - 00:30
fonte

Leggi altre domande sui tag