Questo è qualcosa con cui ho sempre lottato nel mio codice. Supponiamo di avere il seguente codice:Quando all'interno di una classe, è meglio chiamare i suoi membri privati o le sue proprietà pubbliche?
public class MyClass {
private string _myVariable;
public string MyVariable {
get { return _myVariable; }
set { _myVariable = value; }
}
public void MyMethod() {
string usingPrivateMember = _myVariable; // method A
string usingPublicProperty = MyVariable; // method B
}
}
Quale modo è più corretto - metodo A o B? Sono sempre tormentato da questo. Il metodo A sembra essere molto più veloce, perché non deve accedere a una proprietà prima di ottenere la variabile reale. Tuttavia, il metodo B è più sicuro perché se il getter di MyVariable aggiunge la logica aziendale, si è sicuri chiamandolo sempre, anche se non esiste una logica aziendale corrente.
Qual è il consenso generale?
e di http://stackoverflow.com/questions/1545297/fields-vs-properties-for-private-class-variables –
Grazie per aver trovato quelli! Ho provato a cercare ma credo di non aver cercato usando parole chiave corrette. – Amberite
la ricerca SO è * ancora * molto scarsa, hai provato Google e "site: stackoverflow.com"? – Ash