Dare un nome al metodo "fai X se necessario"

17

Quale è un buon modo per assegnare un nome a un metodo che controlla se X deve essere eseguito e X se necessario?

Ad esempio, come denominare un metodo che aggiorna un elenco utenti se i nuovi utenti hanno effettuato l'accesso? UpdateListIfNeeded sembra troppo lungo, mentre UpdateList semplice implica un'operazione potenzialmente costosa e non necessaria ogni volta. EnsureListUpdated è anche una variante.

C # ha un pattern bool TryXXX(args, out result) (ad esempio int.TryParse(str, out num) ) per verificare se X è possibile e farlo, ma questo è leggermente diverso.

    
posta dbkk 21.08.2012 - 19:54
fonte

3 risposte

21

Tendo a usare Ensure . Trasporta il significato di assicurarsi che qualcosa sia curato, tuttavia ciò che deve essere fatto. Se è già bello, basta controllare e abbiamo finito. Altrimenti, fallo. In ogni caso, solo assicurati che venga eseguito .

    
risposta data 21.08.2012 - 19:57
fonte
10

La mia preferenza è UpdateList . Se non c'è niente da fare, così sia. La spesa dovrebbe sempre essere minimizzata, quindi se UpdateList sta facendo più del necessario qualcosa non è corretto nella sua implementazione.

Fondamentalmente è il verbo che ti dice cosa dovrebbe fare il metodo. CalculateX dovrebbe sempre ricalcolare X. GetY dovrebbe sempre restituire Y, ma solo fare il lavoro di recuperarlo se necessario. Allo stesso modo, UpdateZ richiede un aggiornamento di Z assumendo che sia fatto nel modo più efficiente possibile.

    
risposta data 21.08.2012 - 19:56
fonte
1

Chiamami "Forse"

Cooptato dai frammenti di Haskell che ho visto, prova

UpdateListMaybe();
    
risposta data 21.08.2012 - 19:58
fonte

Leggi altre domande sui tag