ottenere convenzioni di denominazione del metodo impostato [chiuso]

0

Nella codifica OOP, esiste una lunga convenzione di denominazione per denominare i metodi accessore / mutatore getThing e setThing . Questi manipolano direttamente le proprietà, che sono spesso private.

Queste convenzioni di denominazione dovrebbero essere 'riservate' esclusivamente per manipolare le proprietà dell'oggetto? o possono essere utilizzati in altri metodi - getFileContents ?

Penso che readFileContents sia molto più chiaro in quanto implica che la proprietà degli oggetti in questo caso non è accessibile, ma viene letto un contenuto di file. Tuttavia, è un po 'ambiguo in quanto non implica che i risultati vengano restituiti come getFileContents .

    
posta myol 15.07.2015 - 15:53
fonte

2 risposte

1

Le convenzioni sui nomi sono semplici suggerimenti. Non ci sono regole per nulla.

L'unica linea guida che devi seguire è nominare la tua funzione in base a ciò che fa. Se la tua funzione readFileContents legge e restituisce parti del file, prendi in considerazione la suddivisione in due funzioni, readFileContents e getFileContents , ad esempio. readFileContents può esaminare il file per dati interessanti e quindi inviarlo a getFileContents quando desidera restituire qualcosa. Questo separerà le preoccupazioni in modo che ogni funzione faccia solo una cosa.

    
risposta data 15.07.2015 - 15:55
fonte
1

Come esempi opposti, in Objective-C o Swift non vedrai più alcun setThing, e non c'è mai stato un getThing. Nell'uso moderno, hai proprietà in Objective-C e variabili in Swift, che sono usate esattamente come se fossero semplici variabili dei membri che puoi leggere e scrivere. Quello che succede dietro le quinte è quindi qualcosa di completamente diverso. Il tuo getter e setter può solo leggere o scrivere un valore, può fare una valutazione pigra, può ricevere notifiche appena prima e subito dopo che un setter viene chiamato, può implementare getter, setter o entrambi nel codice. L'utente di una classe non vede altro che una variabile.

    
risposta data 15.07.2015 - 16:35
fonte

Leggi altre domande sui tag