[gl-como] Tecniche di programmazione: break e continue

Faber zannablu@infinito.it
Mar 1 Mar 2005 21:55:15 CET


On Tuesday 01 March 2005 20:57, Brisa Francesco wrote:

>  c'è una bella differenza tra continue/break e un goto, il goto è brutto
> perchè salta anche all' indietro del codice, un break e continue, saltano
> solo in avanti.

Premetto che sono d'accordo sul non penalizzare così tanto continue, break & 
amici; sono pericolosi, ma se usati con parsimonia aiutano la leggibilità

>  Poi per il fatto di scrivere un programma leggibile e di fare una buona
> analisi, mi pare che sia una questione di buona programmazione in
> generale.
>
>  faccio un esempio:

[cut]

>  senza neppure mettere nessun commento mi pare leggibilissimo....

Sì

>  chi mi fa un raffronto senza while continue e break di questo più
> leggibile ?

Giusto per, ecco la mia prova  :)

while (stringa != "FINE" && flussoInEntrataAperto()) {
    stringa = leggiDaFlusso();
    
    if (! (stringa == "" or stringa.startsWith("#") or stringa == "FINE"))
        faiQualcosaConString(stringa);
}

Ci sono due pecche:

* stringa dev'essere dichiarata prima del ciclo (ma anche nella tua versione 
suppongo che sia così) e DEVE avere un valore diverso da "FINE". Il simbolo 
di = singolo, usato nel tuo secondo if, ho supposto che sia stato una 
svista (ovvero, che intendevi usarlo per confrontare e non per assegnare)

* Più rilevante - se vogliamo - è la ripetizione del confronto di stringa 
con "FINE"

-- 
Faber
http://www.faberbox.com/

There are not many persons who know what wonders are opened to them in the 
stories and visions of their youth; for when as children we learn and 
dream, we think but half-formed thoughts, and when as men we try to 
remember, we are dulled and prosaic with the poison of life. -- H.P. 
Lovecraft


Maggiori informazioni sulla lista gl-como