Cuando comencé a programar por primera vez, asumí que algún día llegaría al punto en que comenzaría un proyecto sentándome y dibujando un diagrama UML de todas las clases, y luego me apegaría a eso. He estado programando durante un par de años y no está resultando así. A medida que avanzo en un proyecto, a menudo digo
- "Oye, necesito una clase para hacer _ _. No había pensado en eso antes".
- "Espera, esta función realmente debería estar en esa clase en lugar de esta. Lo moveré".
- "Esto debería ser en realidad dos clases en lugar de una. Lo dividiré".
- "Debería hacer que estas tres clases independientes hereden todas de una clase abstracta".
- Etcetera, etcétera.
¿Es una mala señal de que a menudo estoy rediseñando así a medida que avanzo? ¿Esto significa que soy un mal programador o es esto normal?