Cuantas veces estamos delante de un programa, creando una función y de repente nos desviamos de nuestro objetivo principal para emprender una cruzada para reducir el tiempo de procesamiento e intentar lograr que esa función o procedimiento se ejecuto lo más rápido posible.
Seguramente esta situación nos la encontramos más veces de las que deseamos.
Este proceso se denomina optimización prematura y se produce cuando el programador permite que las consideracioness de reducción del tiempo o espacio afectan al diseño inicial.
Normalmente las decisiones de optimización en la etapa de codificación son subjetivas, básicamente se basan en las sensaciones que el programador tiene durante esta fase y no en datos empíricos.
Antes de iniciar un proceso de optimización del código fuente os recomiendo:
- Asegurarse que sigue el diseño preestablecido en las etapas anteriores.
- Crear una batería de pruebas que nos permita confirmar que cumple todas las funcionalidades acordadas en el análisis funcional.
- No optimices.
Las optimizaciones de código se deben hacer siempre después de que este se haya finalizado y probado correctamente certificando así que cumple las especificaciones funcionales establecidas en las etapas previas.
Es preferible no optimizar hasta que realmente lo necesitemos, en ese momento se deberá estudiar dónde y cómo optimizar ya que no todo depende de nuestro código fuente y pueden existir recursos externos se deban tener en cuenta.