Chissà perchè immagino Adobe con una lista di bugs in continuo aumento!?. Il baco che ho trovato, nella versione CS3 Professional in italiano, è alquanto fastidioso e pericoloso. Occhio al seguente codice:
Actionscript:
-
private function getRandRange (min:uint,max:uint):uint{
-
return( uint(Math.floor(Math.random() * (max - min +1)) + min) );
-
}
Dopo la formattazione automatica:
Actionscript:
-
private function getRandRange (min:uint,max:uint):uint {
-
return uint(Math.floor(Math.random() * max - min + 1) + min);
-
}
Ha tolto le parentesi nel calcolo max-min+1!! Che, ovviamente, non restituisce più il valore corretto!! La parentesi, infatti, è vitale in quanto permette di moltiplicare Math.random() per l'intero risultato dell'espressione (max-min+1). Nel secondo caso, dopo che il codice è stato "sformattato", Math.random() viene moltiplicato "solo" per max e poi, al risultato di questa moltiplicazione, viene sottratto (min+1)!! L'ho spiegato solo per esigenze di completezza... ma credo che era chiaro a tutti...
Evidentemente in casa Adobe pensano davvero che la matematica sia un opinione!?
Questo è un baco pericoloso su codici corposi... se la formattazione "sconvolge" il codice, diventa un serio problema andare a rimettere tutto a posto!! Spero che Adobe fornisca al più presto una patch!!! Quindi ATTENZIONE!! Fatemi sapere se lo fa anche a voi, alla vostra versione...