<div dir="ltr">Il giorno 28 settembre 2014 19:23, Dario Bertini <span dir="ltr"><<a href="mailto:berdario@gmail.com" target="_blank">berdario@gmail.com</a>></span> ha scritto:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Prima di tutto: non è bello avere un tipo che può essere<br>
"inizializzato a metà", sul quale poi dovrai chiamare diversi<br>
metodi/rimaneggiarlo (esempio in questo caso: potresti trovarti una<br>
pagina web piena di "sconosciuti", solo perchè in un branch del codice<br>
ti sei dimenticato di settare correttamente i nomi)<br></blockquote><div><br></div><div><br></div><div>Grazie per la risposta. L'esempio che ho scritto era la prima cavolata che mi è venuta in mente per descrivere il mio dubbio, anche se poi nel codice che scrivo normalmente ne faccio comunque tante di cavolate. </div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">detto questo, la seconda alternativa la eviterei proprio... la 3a è<br>
ok, ma io uso sempre la prima<br></blockquote><div><br></div><div><br></div><div>Ok, quindi decoratore @property per il getter, e poi @<proprietà>.setter per scriverci dentro il valore.</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Non ti preoccupare dell'overloading: non sono sicuro al 100% di come<br>
funzioni sotto il cofano in questo caso (i descriptor e la metaclasse<br>
di object dovrebbero essere i pezzi di Python responsabili), ma di<br>
fatto un decoratore consuma e restituisce un oggetto, ergo la classe<br>
Pippo potrebbe anche non essere mai costretta a vedere che al suo<br>
interno è stato definita una funzione `nome()`</blockquote><div><br></div><div><br></div><div>Grazie ancora </div></div></div></div>