Firefox OS App Days

Móviles, optimizando recursos

Móviles, optimizando recursos

firefox phone

CSS

Ponerlos al principio para que no haya que repintar, aprovechar al máximo las posibilidades de css3 fondos, degradados, bordes, animaciones... ya que usan la gpu. Degradan bien (@supports y CSS.supports), usar selectores eficientes.

CSS

Imágenes de fondo, no cargan hasta que se necesitan. Si se quieren precargar alguna tenermos:
<link rel="prefetch" href="sprite.png"/>.

Situaciones nuevas: El diseño al pixel muere, existen multitud de resoluciones y proporciones. Pensar que el puntero es el dedo -> puntero gordo sin eventos hover pero con evento touchstart.

JavaScript

Ponerlos al final ya que bloquean el resto de descargas, cuidar el rendimiento en móviles ya que gastan batería, no usar librerías para cosas que ya están implementadas, ej. document.querySelectorAll.

Para animaciones user requestAnimationFrame() en lugar de setInterval().

Cargas asincronas. Strict mode

Cache

Nuevas apis que ofrecen más control sobre el cache del navegador: Offline cache, session storage, IndexdedDB.

Paralelizar

En muchos casos mejora repartir las peticiones http en diferentes nombres de dominio o cdn, pero hay que sumarle el precio de la resolución de DNS.

Pre-resolución de DNS <link rel="dns-prefetch" href="//widget.foo.com"/>.

Herramientas

Firefox (mejor Aurora) ofrece de serie herramientas para desarrolladores como diseño adaptable, profiler, consola remota...

Captura de Profiler

Herramientas

Probar conexiones lentas iprelay (Linux).

Referencias

Referencias