Eventuali duplicati:
Allen Holub wrote “You should never use get/set functions”, is he correct?getter e setter: Codice odore, male necessario, o non può vivere senza di loro
C'è un buon, no, un molto buona ragione, per risolvere tutti i problemi legati all'utilizzo di getter e setter per i linguaggi orientati agli oggetti? Cosa c'è che non va usando solo un riferimento diretto a una proprietà o un metodo? Esiste una sorta di "copertura semantica" di cui le persone non vogliono parlare in modo educato? Ero solo troppo stanco e mi sono addormentato quando qualcuno è uscito e ha detto "Tu scriverò quantità copiose di codice per ottenere getter e setter"?
Follow-up dopo un anno:
Sembra essere un evento comune con Java, meno con Python. I'm beginning to wonder if this is more of a cultural phenomena (related to the limitations of the language) rather than "sage advice". Siccome non programma in Java (attualmente per scelta) non posso fare quella valutazione.
Il punteggio di domanda corrente (corrente al momento della stesura 2010-03-22) -1 è completo per il lulz per quanto mi riguarda. È interessante notare che ci sono domande specifiche che sono downvoted, non perché sono "domande cattive", ma piuttosto, perché colpiscono il nervo scoperto di qualcuno .
Quindi andiamo al nocciolo della questione. mi ripeto:
What's wrong with just using a direct reference to a property or method?
Ed ecco il corollario non scritta:
Are we so undisciplined as programmers that we can't keep our hands off of things that are clearly marked "no touchy"?
Non mi sembra un duplicato esatto. L'altra domanda chiede "Dovresti * non * usare getter/setter?" mentre questa domanda chiede "Dovresti * mai * usare getter/setter?" C'è un intero carattere di differenza lì! – Talljoe
D'oh, se questo è un duplicato esatto, allora perché diavolo non è apparso nei suggerimenti quando l'ho postato per la prima volta? –
@Talljoe: Questa è una sottile differenza che mi è sfuggita. Occhio fino! Leggerò attentamente tutte le altre domande nella barra laterale relativa che rispondono a questa domanda per selezionare un sostituto più adatto. Grazie. :) –