amateur

Don’t repeat yourself (DRY)

DRY es la oposición a WET (write everything twice) que algunos también denominan we enjoy typing o waste everyone’s time.

Generalmente este tipo de principio se utiliza en aplicaciones y sistemas desarrollados en varias capas (multi-tier) en las que varios componentes de una aplicación hacen trabajos similares.

En este tipo de sistemas si se utilizan los principios de DRY se suelen construir o utilizar Frameworks que reduzcan o eliminen las tareas repetitivas. De esa manera los cambios en un sistema se centralizan y los errores son más fáciles de detectar o corregir.

Es una manera de refactorización por así decirlo. En la refactorización se pretende eliminar duplicados en algoritmos pero el concepto de DRY va más allá porque se refiere a duplicación de responsabilidades y capacidades. Además DRY no solo se refiere a código sino a documentación, esquemas de bases de datos, planes de pruebas, etc.