Il carattere di sottolineatura può essere visto come una forma di notazione ungherese *
, ma il prefisso è un "carattere magico" invece di qualcosa che ha un significato.
Se si desidera qualcosa che dice di più su a cosa serve il prefisso, si utilizzerà un prefisso come member
o mbr
o m
. A volte viene utilizzato il prefisso m_
, ma il trattino basso viene utilizzato come separatore anziché come parte del prefisso e le raccomandazioni di denominazione per .NET indicano che non deve essere utilizzato come separatore.
Personalmente sono arrivato ad apprezzare il carattere di sottolineatura per le variabili membro, anche se è un prefisso con un significato nascosto. Non ingombra i nomi tanto quanto qualsiasi altro prefisso.
E come sempre, è più importante scegliere uno standard e attenersi ad esso, rispetto a quale standard è che effettivamente scegli.
*
notaition ungherese ha in gran parte finito per essere utilizzato per specificare il tipo di dati in lingue debolmente tipizzato come VBScript, ma l'intenzione originale era di specificare altre proprietà delle variabili, in modo da utilizzarlo per le variabili di utente è più lungo l'originale intenzioni.
Ho intenzione di riferire a chiunque pensi che il prefisso di sottolineatura sia una buona idea per questa risposta. –
beh, ho sempre usato il carattere di sottolineatura .. per me questo. 1) più digitando 2) facile da escludere accidentalmente 3) sottolineatura è più facile da leggere (dal mio punto di vista) perché questo. è più come vb "then" "end if" 4) e non importa quanto piccolo o grande sia il tuo metodo, è sempre utile distinguere chiaramente tra vars locali e di classe – Jack0fshad0ws
@ Jack0fshad0ws: È una questione di gusti, certamente. Personalmente aggiunge troppa punteggiatura che spezza il flusso per me. Non stavo suggerendo di aggiungere "questo" dappertutto sebbene - io proprio non differenzi con la sintassi o un prefisso. Non riesco a ricordare l'ultima volta che sono stato leggermente confuso tra variabili locali e istanze. Mantenere i metodi brevi e scegliere bene i nomi rende abbastanza chiaro se si ha a che fare con informazioni transitorie sullo stato dell'oggetto logico. –