Open EduardoCaceres5566 opened 6 months ago
El ideal es minimizar el número de argumentos. En ese sentido, si es fácil tener el constructor con menos argumentos hay que hacer eso. De hecho el libro tiene un ejemplo así:
Aquí MakeCircle(...)
fácilmente pudo ser el constructor de la clase Circle
.
Dicho eso, la creación de objetos se trata como un caso especial en nuestra rúbrica. Muchas veces no aplicamos descuentos por constructores que reciben más de 3 argumentos porque, a veces, para crear el objeto se necesitan varios datos. Y no hay mucha vuelta que darle :P
En el clean code dice que deberíamos preferir funciones con menos argumentos, raramente usando hasta 3. ¿Cuándo llamo un new y le tengo que pasar datos a un objeto o una data structure, es clean code válido pasarle más de 3? O existe alguna otra forma de pasarle toda la información?
Por ejemplo, tengo una data structure que toma toda la información de una habilidad de modificación de stat. Entonces se le pasa el tipo de modificacion (bonus o penalty), que stats se va a aplicar a, a qué unidad se aplica, con que condición se aplica, etc.