Regla de tres (programación informática)
# Regla de tres (programación informática)

La regla de tres ("Tres strikes y tú refactorizas" ) es una regla práctica 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 y atribuida a Don Roberts.

La duplicación se considera una mala práctica en la programación porque dificulta el mantenimiento del código. Cuando la regla codificada en un fragmento de código replicado cambia, quien mantiene 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.. Al intentar una refactorización prematura se corre el riesgo de seleccionar una abstracción incorrecta, lo que puede resultar en un código peor a medida que surgen nuevos requisitos y eventualmente tendrá que ser refactorizado nuevamente.

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

