Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Introducción:
1) ¿Que es performance?
Entonces…
¿En qué momento se empieza a pensar en la performance de una App?
Todas las apps profesionales tienen como objetivo cubrir una necesidad,
resolver un problema y/o llamar la atención de los usuarios para que
permanezcan en ella el mayor tiempo posible, pero si una app tarda
demasiado tiempo en cargar el usuario se frustra y se va, todos tenemos
un límite de paciencia, pongamos un ejemplo para dar cuenta de ello:
Esto es solo un ejemplo, no tiene que ser la interfaz del volumen, pensá en
los tiempos de carga de los juegos ¿Cuanto tiempo perdiste mirando la
pantalla de carga? , o pensá en Instagram, si su Feed o su apartado de
cámara, junto con las diversas opciones de photoshop, tardarían 10s en
cargar nadie usaría esa aplicación.
Conclusión:
3) Ciclos de Vida:
NO TODAS LAS PETICIONES tienen que ser menores a 600 ms, solo la
primera, la que empezará mostrandolo todo.
Esta medición es sin dudas de las más importantes ya que al ser el inicio de
la App podría definir si la mayoría de usuarios deciden quedarse o no, si tarda
demasiado en cargar, los usuarios pensarán que está rota o se aburren de
esperar y se van, sin ver el contenido.
SI o Speed Index:
Menor a 2.5s.
Menor a 100ms.
Menor a 3.8s.
Mide los “saltos” que la página dio mientras cargaba. A veces cuando una
página es muy pesada carga en “waterfall” y su contenido cambia de lugar o
se agrega nuevo contenido.
4 A) Lazy Loading:
No todo tiene que ser cargado de manera Lazy, abusar de esta estrategia
termina generando problemas de rendimiento ya que más cosas tendrán que
ser cargadas al mismo tiempo.
Al importar toda una librería la App puede hacerse muy pesada, para saber
cuánto pesa tu App en general y cada sección de ella en particular podés
hacer uso de source-map-explorer.
Usar Lazy Loading también le dará a tu app una mayor seguridad, por
ejemplo si el primer componente de tu App es el Login o Register, hasta que
el usuario no se haya conectado no tendrá acceso al resto de los
componentes.
4D) Modo de producción con ng build:
Al principio puede ser complicado desarrollar con el modo estricto, pero las
buenas prácticas del Ecmascript 6 ayudarán a la performance y a tu
conocimiento.
LinkedIn: https://www.linkedin.com/in/ivo-valentin-mastrangelo-42270521b/.
GitHub: https://github.com/IvoVM.