¿Es mejor escribir muchos métodos pequeños (o funciones), o simplemente escribir la lógica/código de esos pequeños procesos directamente en el lugar donde habría llamado el método pequeño? ¿Qué hay de romper el código en una función pequeña, incluso si por el momento solo se llama desde un punto?Mejores prácticas: ¿muchas funciones/métodos pequeños, o funciones más grandes con componentes de proceso lógicos en línea?
Si la elección depende de algunos criterios, cuáles son; ¿Cómo debería un programador hacer un buen juicio?
Espero que la respuesta se pueda aplicar generalmente en muchos idiomas, pero si es necesario, las respuestas dadas pueden ser específicas para un idioma o idiomas. En particular, estoy pensando en SQL (funciones, reglas y procedimientos almacenados), Perl, PHP, Javascript y Ruby.
cosas división ayuda a la legibilidad del código. if (Convert.ToBoolean (fila ["IsActive"])) es menos legible que "if (obj.IsActive)". :) –
Hm. Pregunta SOF relacionada: http://stackoverflow.com/questions/20981/how-many-lines-of-code-is-too-many – Pistos
Personalmente no me gusta cuando el código tiene muchas funciones muy pequeñas (1-3 líneas) que solo se llaman desde un solo lugar (cosas como 'int foo() {return do_foo();} int do_foo() {/ * código real * /}' es el peor, IMO) Luego, para entender una función útil real compuesta de estas piezas, tengo que perseguir cada subfunción y es a) fácil de perder en b) fácil de perder de vista las posibles optimizaciones. Diría que si encaja perfectamente en una pantalla y no hay posibilidad de volver a usarla, no la dividas. – PSkocik