Ho evitato in precedenza i caratteri di sottolineatura nei nomi delle variabili, forse un residuo dei giorni del college in Java. Quindi quando definisco una proprietà nell'obiettivo C questo è ciò che faccio naturalmente.Prefisso dei nomi delle proprietà con un trattino basso nell'obiettivo C
// In the header
@interface Whatever
{
NSString *myStringProperty
}
@property (nonatomic, copy) NSString *myStringProperty;
// In the implementation
@synthesize myStringProperty;
Ma in quasi tutti gli esempi è fatto come
// In the header
@interface Whatever
{
NSString *_myStringProperty
}
@property (nonatomic, copy) NSString *myStringProperty;
// In the implementation
@synthesize myStringProperty = _myStringProperty;
Devo superare la mia avversione per la sottolineatura perché questo è l'unico modo che dovrebbe essere fatto, c'è una buona ragione per questo lo stile è il preferito?
Aggiornamento: Con sintesi proprietà automatica al giorno d'oggi è possibile lasciare il @synthesize e il risultato è lo stesso che se avessi usato
@synthesize myStringProperty = _myStringProperty;
che mostra chiaramente la preferenza di Apple. Da allora ho imparato a smettere di preoccuparmi e ad amare la sottolineatura.
Un collegamento alla domanda originale che pensi che questo duplichi salverebbe un po 'di tempo gli utenti futuri. – user2067021