¿Razonar para esperar hasta la tercera vez en la Regla de tres?

15

Acabo de encontrar el artículo " Rule of Three " en wikipedia

  

La regla de tres es una regla empírica de refactorización de código para decidir cuándo un   El código replicado debe ser reemplazado por un nuevo procedimiento. Eso   indica que el código se puede copiar una vez, pero que cuando el mismo código   se utiliza tres veces, se debe extraer en un nuevo procedimiento. los   La regla fue introducida por Martin Fowler en Refactoring y atribuida   a Don Roberts.

Sé que esto es solo una regla de oro, pero ¿por qué se recomienda refactorizar solo después de la segunda duplicación? ¿Hay algún inconveniente en la refactorización cuando escribimos la primera duplicación?

    
pregunta Louis Rhys 08.05.2013 - 04:32
fuente

1 respuesta

14

Creo que esta regla de oro existe porque es fácil quedar atrapado en jugar "Qué pasaría si ..." al diseñar el código por primera vez o después de la primera duplicación. He encontrado una parálisis grave en el análisis en algunos casos porque la gente comenzó a diseñar funcionalidades que podrían necesitarse más adelante. Pero no es necesario para el problema inmediato en cuestión.

Hay un arte para diseñar / escribir solo lo que necesitas, al tiempo que mantienes el código sujeto a futuras re-factorizaciones.

    
respondido por el EdH 08.05.2013 - 05:05
fuente

Lea otras preguntas en las etiquetas