¿Cómo se nombra una función que devuelve un generador (es decir, usa yield foo
en lugar de return foo
)?Nombre de una función que devuelve un generador
- Definitivamente no es
getFoo()
porque no devuelve el valor de Foo. - Probablemente no sea
foos()
porque prefiero tener un prefijo fácil de distinguir. - Probablemente no sea exactamente
listFoo()
porque no devuelvelist
. - Probablemente no sea
iterateFoo()
porque este prefijo es demasiado largo.
¿Cuál es su solución preferida?
Actualización:
Mientras foos()
puede ser una buena solución perfectamente en algunos casos, observar cómo los nombres de métodos tienden a comenzar con un verbo. El verbo transmite la idea de que este es un método, no un campo de datos, y por lo tanto ayuda a la legibilidad. Si es posible, preferiría una solución que facilite distinguir un método de un campo de datos.
¿Quién dijo que un prefijo es algo bueno? ¿Cómo es 'foos' no perfectamente claro? – delnan
Un pensamiento: genFoo() – sgallen
Estoy con @delnan en este caso. 'foos' suena bien. ¿Cómo se nombra un iterable (por ejemplo, una lista)? – zrxq