YAGNI

De Wikipedia, la enciclopedia libre
(Redirigido desde «No vas a necesitarlo (YAGNI)»)
Saltar a: navegación, búsqueda

En ingeniería de software la filosofía de desarrollo de programas: No vas a necesitarlo o YAGNI (en inglés 'You Ain't Gonna Need It') consiste en que no se debe nunca agregar funcionalidad excepto que sea necesario. La tentación de escribir código que no es necesario, pero que puede serlo en un futuro tiene las siguientes desventajas:

  • Cuando se desarrollan nuevas funcionalidades se suele sacrificar el tiempo que se destinaría para la funcionalidad básica.
  • Las nuevas características deben ser depuradas, documentadas y soportadas.
  • Una nueva funcionalidad impone límites a lo que puede ser hecho en el futuro y puede impedir la implementación de una característica necesaria en el futuro.
  • Hasta que está definido para qué se puede necesitar es imposible saber qué debe hacer. Puede suceder que cuando se requieran no funcionen correctamente.
  • Puede derivar en un código inflado: El programa se vuelve grande y complicado pero que tampoco proporciona más funcionalidad.
  • Excepto que haya especificaciones y algún tipo de control de versiones, esta característica puede no ser conocida por los programadores que podrían hacer uso de ella.
  • Puede inducir a que se agreguen nuevas funcionalidades y como resultado puede llevar a un efecto 'bola de nieve' que puede consumir tiempo ilimitado y recursos, a cambio de ningún beneficio.


Véase también[editar]