Come si chiama una funzione che restituisce un generatore (ovvero, utilizza yield foo
anziché return foo
)?Nome di una funzione che restituisce un generatore
- Non è sicuramente
getFoo()
perché non restituisce un valore di Foo. - Probabilmente non è
foos()
perché preferirei avere un prefisso facile da distinguere. - Probabilmente non è esattamente
listFoo()
perché non restituisce unolist
. - Probabilmente non è
iterateFoo()
perché questo prefisso è troppo lungo.
Qual è la soluzione che preferisci?
Aggiornamento:
Mentre foos()
può essere una buona soluzione perfettamente in alcuni casi, notare come i nomi dei metodi tendono a iniziare con un verbo. Il verbo trasmette l'idea che questo è un metodo, non un campo dati, e quindi aiuta la leggibilità. Se possibile, preferirei una soluzione che renda facile distinguere un metodo da un campo dati.
Chi ha detto che un prefisso è una buona cosa? In che modo 'foos' non è perfettamente chiaro? – delnan
Un pensiero: genFoo() – sgallen
Sono con @delnan su questo. 'foos' sembra giusto. Come si nomina un iterabile (ad esempio un elenco)? – zrxq