DRY y YAGNI, dos metodologías para no perder de vista

Para cerrar una etapa de acrónimos o siglas relacionados al diseño de software, me resta mencionar al menos dos que no está demás tener en cuenta.
Son metodologías en las que solemos caer muy fácilmente y para colmo de males, con bastante frecuencia.
Estas son: DRY (Don't Repeat Yourself) y YAGNI (You Ain't Gonna Need It).
Intentar llevar a cabo todas y cada una de las metodologías y principios vistos hasta aquí, nos permitirá tener un código limpio; mucho más fácil de leer, comprender y expandir.


  • DRY: lo que para nosotros en castellano significa: No te repitas a tí mismo. No es ni más ni menos que eso. Es decir, que al tener la misma funcionalidad en nuestro código, una y otra vez, cuando debemos realizar un cambio, corremos el riesgo de olvidarnos de algo. Y no solamente tenemos duplicado el código, sino también las pruebas que les hayamos aplicado. Esta duplicidad, vuelve nuestro código frágil.
  • YAGNI: traducido a nuestro idioma: No lo vas a necesitar. Nos sucede a menudo que cuando estamos codificando algo, pensamos "Esto es algo que vamos a necesitar después" y lo agregamos en ese mismo momento aunque no estemos trabajando en eso exactamente. Entonces, cuando llegamos al punto en que realmente tenemos una completa comprensión de lo que actualmente se necesita, nos damos cuenta que lo que creamos, no es lo que se requiere. Así que, en lugar de ahorrar tiempo realizándolo cuando trabajábamos en el mismo contexto, perdimos nuestro preciado tiempo porque ahora tenemos que volver a hacerlo de nuevo. Cuando hemos diseñado nuestro código apropiadamente, agregarle funcionalidad no va a ser un problema. Debemos estar preparados para los cambios, pero debemos hacerlos cuando realmente son necesarios, no antes.
Tengamos siempre en cuenta que nosotros mismos nos podemos convertir en nuestros propios psicópatas violentos. Entonces, seamos benevolentes con nosotros mismos y produzcamos código de calidad.

0 comentarios:

Publicar un comentario

Muchas gracias por leer el post y comentarlo.

 
Copyright 2009 Programación SOLIDa
BloggerTheme by BloggerThemes | Design by 9thsphere