On Jan 30, 2008 3:01 PM, Java <[EMAIL PROTECTED]> wrote: > > > Come risolve lo stesso problema Python? Il tipo è ininfluente, fare > > funzioni che accettano un numero variabile di argomenti è banale, > > comodo da gestire e piuttosto gradevole da leggere (again, named > > parameters). > > > > > Ora non esageriamo, non è che tutto ciò che fa python è bello e > fantastico e ciò che fanno altri linguaggi fa schifo. > > L'overloading è molto comodo proprio per migliorare la leggibilità del > codice. > > supponi di avere 10 metodi overloadati (ARGH!). E supponi che ognuno sia > di 100 righe di codice. > Secondo te è meglio avere un unico metodo con tutti gli if chee in base > alla combinazione di valori passati per parametro esegue uno o l'altro > ramo dell'if-then-else? > >
Se un metodo diventa tanto lungo, ci vuole un buon motivo... se 10 metodi diventano tanto lunghi.... probabilmente è il momento di rifattorizzare. E forse non c'è bisogno di fare tutti questi if. La scelta idiomatica di python è, anziché usare if caso1: fn1() elif caso2: fn2() elif caso3: fn3() ma è di mettere in un dizionario: funzione = {"caso1":fn1, "caso2":fn2, "caso3":fn3} poi hai la tua variabile mio_caso (che puo' valere caso1, caso2, quello che ti pare) e poi chiami funzione[mio_caso]() ciao fra
_______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python