2010-07-31 13 views
8

The Pragmatic Programmer es altamente recommended por muchas personas. Acabo de terminar de leerlo, y puedo ver por qué las personas lo recomiendan, aunque me gustaría señalar que Code Complete cubre casi todo el mismo material con mucha más profundidad.¿Los autores de The Pragmatic Programmer se olvidaron de YAGNI?

Sin embargo, una cosa que me molestó fue la forma en que los autores nunca mencionaron ningún desventajas de la flexibilidad, la generalización, y dejando espacio para el desarrollo futuro. Esos conceptos son todos muy buenos, pero ¿qué pasó con el principio de YAGNI (You Is not Gonna Need It), que evita que los desarrolladores pierdan el tiempo implementando flexibilidad que nunca va a ser utilizada?

Una búsqueda de SO revela 400 preguntas sobre YAGNI, por lo que duda que el concepto era demasiado oscuro para los autores. Por supuesto, no estoy tan experimentado como ellos, así que ¿por qué no mencionaron el uso de la restricción en todo el libro?

Gracias.

+2

Realmente tendría que preguntar a ellos, aunque me imagino que la razón es que diciendo YAGNI no vende libros. – Oded

Respuesta

2

Ellos no lo llaman YAGNI, pero no es la palabra clave en la página 11 que tiene al menos el mismo enfoque:

saber cuándo parar!

+2

No creo que sea realmente lo mismo. Saber cuándo dejar de jugar con su código es diferente de saber cuándo no diseñar una flexibilidad excesiva en el sistema. Sin embargo, tal vez estoy confundido acerca de lo que se trata YAGNI. – Dijkstra

+0

Solo puedo adivinar si Hunt & Thomas tenía "YAGNI" en mente cuando escribieron ese pasaje, pero tengo la fuerte sensación de que su intención era la misma. –

0

no olvidaron. Creo que el libro es anterior a que YAGNI sea bien conocido.

0

[YAGNI] impide que los desarrolladores de perder su tiempo implementar flexibilidad que nunca va a ser utilizado

flexibilidad de aplicación no necesariamente tomar más tiempo. En mi experiencia, es algo que puede (y debería ser) ser parte de su estilo de programación natural. El código IMHO que es inflexible generalmente se debe a prácticas de programación deficientes.

Cuestiones relacionadas