Trata de Usar Variables Locales
1. Trata de Usar Variables Locales #
El uso de variables locales en lugar de variables globales o de instancia mejora la eficiencia del código, reduce el consumo de memoria y minimiza los efectos colaterales que pueden surgir por modificaciones accidentales de datos en diferentes partes del programa.
✅ Ventajas de usar variables locales:
- Menor consumo de memoria, ya que las variables locales solo existen durante la ejecución de su función.
- Evita efectos secundarios, ya que las variables globales pueden ser modificadas accidentalmente por otros métodos o funciones.
- Mejor rendimiento, ya que el acceso a variables locales es más rápido que el acceso a variables globales o de instancia.
2. Ejemplo incorrecto: Uso de variables de instancia en lugar de variables locales #
Aquí utilizamos una variable de instancia (resultado), lo que implica que su valor puede cambiar desde otros métodos, lo que es innecesario en este caso.
3. Ejemplo optimizado: Uso de variables locales #
Aquí utilizamos una variable local dentro del método, lo que mejora la seguridad y la eficiencia.
✅ Beneficios:
- Se reduce el alcance de la variable, evitando que otros métodos la modifiquen accidentalmente.
- Se mejora el rendimiento al no usar memoria para una variable que no necesita persistir fuera del método.
4. Ejemplo incorrecto: Uso de variables globales #
Aquí se usa una variable global, lo cual puede generar problemas si otros métodos o funciones la modifican accidentalmente.
5. Ejemplo optimizado: Uso de variables locales en lugar de globales #
Aquí eliminamos la variable global y usamos una variable local, lo que mejora la encapsulación y el rendimiento.
✅ Beneficios:
- Mayor seguridad, ya que la variable no puede ser modificada por error desde otra función.
- Menor consumo de memoria, ya que la variable solo existe durante la ejecución del método.
6. Ejemplo incorrecto: Uso de variables de clase cuando no es necesario #
Aquí se usa una variable de clase para almacenar un valor temporal, lo cual no es necesario.
7. Ejemplo optimizado: Uso de variable local en lugar de variable de clase #
Aquí usamos una variable local en lugar de una variable de clase, lo que mejora la eficiencia.
✅ Beneficios:
- Reduce el uso de memoria.
- Evita la contaminación de estado al no depender de variables de instancia o globales.
- Mejora la encapsulación y seguridad del código.
Resumen del tema
Conceptos clave #
- Alcance y Ciclo de Vida Local: las variables locales residen en la pila (stack) y se liberan automáticamente al finalizar la llamada de la función.
- Evitar Polución de Estado: prescindir de variables globales y de campos de instancia para cálculos temporales o transitorios.
- Thread-Safety y Concurrencia: las variables locales en la pila son inherentemente seguras entre hilos (thread-safe), evitando condiciones de carrera (race conditions).
- Acceso Rápido por Registro: los compiladores y JIT optimizan las variables locales asignándolas directamente a registros del procesador.
Qué debes recordar #
Usa siempre variables locales para cálculos transitorios en lugar de variables globales o de instancia, garantizando mayor velocidad de acceso y seguridad ante concurrencia.