JavaScript es el lenguaje más utilizado a día de hoy en el mundo del desarrollo, en su origen era una tecnología orientada a darle un pequeño extra al HTML de las primeras webs, pero ha ido evolucionando conquistando nuevos terrenos y enriqueciéndose por el camino sobre todo gracias a la gran apoyo de la comunidad.
Debido a este origen no es una tecnología muy rápida, de hecho al ser un lenguaje de alto nivel es bastante más lento que otros por lo que si no optimizas tu proyecto puede terminar yendo rematadamente lento y ser además un consumidor de batería de móvil tremendo.
Os voy a dar ahora unos consejos muy sencillos para que vuestro código se ejecute más rápido y mejor, son de bastante sentido común así que seguro que ya conocéis la mayoría.
- Minimizar el acceso al DOM: El acceso a los elementos de la página es algo tremendamente costoso, de hecho React y Vue deben gran parte de su velocidad a su DOM virtual, que les ahorra muchos ciclos de proceso. Intenta acceder lo mínimo posible, especialmente si utilizas Vanilla Javascript.
- Elimina del proyecto código y dependencias que no se usan: Aunque en apariencia no vas a usar tiempo de ejecución si que tienen un coste en memoria y en carga inicial.
- Invoca las APIs siempre de manera asíncrona: Evitarás así que el navegador se quede muerto y el usuario esperando (o yéndose a otra web u a otra aplicación).
- Evita las variables globales: Causan muchos dolores de cabeza al cruzarse con otras locales con el mismo nombre y además consumen mucha memoria (y tiempo de acceso).
- Vigila el uso de la memoria: Utiliza la mínima memoria que puedas, evita los memory leaks.
- Cachea todo lo que puedas: Ganarás mucho en velocidad y en experiencia de usuario.
- Minimiza tu código: Los grandes frameworks de JavaScript lo hacen por defecto, si trabajas con Vanilla JavaScript busca algún minificador del tipo JS Compress, JS minifer y demás.
- Cuidado con los bucles: Al ser síncronos te pueden dejar la web muerta y si hay algún error de programación pueden bloquear incluso el navegador del usuario.
- Utiliza web workers: Son muy rápidos y se ejecutan en background sin afectar a la experiencia del usuario y a la ejecución de código en el hilo principal.
- Refactoriza, refactoriza y vuelve a refactorizar.
Espero que os sea de utilidad ^_^.
Comentarios