Codigo limpio y refactorización
Optimizar código antes de tener una clara necesidad o evidencia de que es un problema puede dificultar la lectura, el mantenimiento y, en algunos casos, incluso degradar el rendimiento.
Ya lo hemos visto en el principio de YAGNI (You Aren't Gonna Need It).
Ejemplo Mal
1public void code(int[] nums) { 2 int i = 0; 3 int n = nums.length; 4 for (; i < n - 4; i += 5) { 5 nums[i] *= 2; 6 nums[i + 1] *= 2; 7 nums[i + 2] *= 2; 8 nums[i + 3] *= 2; 9 nums[i + 4] *= 2; 10 } 11 for (; i < n; i++) { 12 nums[i] *= 2; 13 } 14}
Ejemplo Corregido
1public void improvedMethod(int[] nums) { 2 for (int i = 0; i < nums.length; i++) { 3 nums[i] *= 2; 4 } 5}