Regla de tres (programación de computadoras)


La regla de tres ( "Tres avisos y usted refactoriza" ) es una regla general de refactorización de código para decidir cuándo se deben refactorizar piezas de código similares para evitar la duplicación. Establece que dos instancias de código similar no requieren refactorización, pero cuando se usa un código similar tres veces, debe extraerse en un nuevo procedimiento. La regla fue popularizada por Martin Fowler en Refactoring [1] y atribuida a Don Roberts.

La duplicación se considera una mala práctica en la programación porque hace que el código sea más difícil de mantener . Cuando cambia la regla codificada en un fragmento de código replicado, quien mantenga el código tendrá que cambiarlo en todos los lugares correctamente.

Sin embargo, elegir un diseño apropiado para evitar la duplicación podría beneficiarse de más ejemplos para ver patrones. Intentar una refactorización prematura corre el riesgo de seleccionar una abstracción incorrecta, lo que puede dar como resultado un código peor a medida que surgen nuevos requisitos [2] y eventualmente tendrá que ser refactorizado nuevamente.

La regla implica que el costo de mantenimiento ciertamente supera el costo de la refactorización y el mal diseño potencial cuando hay tres copias, y puede o no hacerlo si solo hay dos copias.