Come denominare metodi DAL / repository complessi? [chiuso]

2

Sto iniziando a lavorare con pattern di repository. Quando si tratta di query semplici, non ho problemi con i nomi.

  • GetById
  • GetByDay
  • UpdateById

Se un metodo recupera i dati filtrati da due valori, anch'io posso definirlo correttamente.

  • GetByNameAndSurname

Anche quando ci sono filtri molto avanzati, lo chiamo come segue.

  • GetByFilter

(e passa l'oggetto dei criteri di ricerca)

Ma ho un problema con i metodi di denominazione del tipo:

  • Ottieni dati filtrati per tre o quattro valori (GetByNameAndSurnameAndDayAndCountry)
  • Ottieni dati usando il confronto (GetByDateGreatherThan)
  • Misto (GetByCreateDateGreatherThanAndNameAndSurname)

C'è qualche buon schema che posso usare per denominare tali metodi?

    
posta Landeeyo 22.04.2015 - 09:54
fonte

1 risposta

6

Utilizza l'intera firma del metodo per specificare il tuo intento, non solo il suo nome. I nomi dei metodi dovrebbero rappresentare verbi e non frasi. Le tue firme di metodo possono essere scritte come:

Get(object id)
Get(Date day)
Update(object id)

Get(string name, string surname)
Get(Filter filter)

Get(string name, string surname, Date day, string country)
Get(Date greaterThan);
Get(Date greaterThan, string name, string surname)

Un caso in cui potrebbe essere necessario essere più specifico in un nome di metodo dovrebbe essere quando la parte di parametro della firma è identica. Ad esempio:

Get(object id); // GetById 
Get(object name); // GetByName
    
risposta data 22.04.2015 - 10:14
fonte

Leggi altre domande sui tag