Быстрые Web приложения: разработка, профайлинг, оптимизация

 
Время проведения
21
февраля2015
Завершено

09:00 - 18:00
г. Киев (место уточняется)

Описание

Практика создания приложений на Web платформе уже устоялась, однако отношение к ней по прежнему не однозначно. Одним из основных доводов против является низкое быстродействие HTML приложений и плохая отзывчивость. Тренинг ознакомит с серией техник, позволяющими разрабатывать максимально быстрые Web приложения, поднять отзывчивость интерфейса и сделать ваших пользователей счастливее.

"Оптимизация производительности - это не только о том что бы сделать ваше текущее приложение быстрее, это так же о том что бы позволить вам делать вещи которые вы не могли делать раньше."(с) один из докладов на Google I/O

План мероприятия

Введение:
• Становление Web платформы, как инструмента для создания приложений
• Приемущества и недостатки web apps по сравнению с native apps
• Быстродействие как ключ к счастливым пользователям, качественным продуктам и домиированию Web платформы

Пять элементов оптимизации:
• Скорость загрузки
• Скорость исполнения JavaScript
• Скорость рендеринга и отзывчивость
• Расходование памяти, garbage collection
• Особенности человеческого восприятия и UI трюки

Скорость загрузки:
• Критерии успеха, методики измерения
• Конкатенация, минификация, упаковка
• Порядок загрузки
• Ленивая загрузка контента
• Настройки сервера
• Возвращение серверного рендеринга

Скорость исполнения JavaScript:
• Состояние JS движков сегодня, критерии успеха, методики измерения
• Оптимизации V8
• Условная типизация
• Объекты против массивов
• Большие данные
• LookUp цепочки
• Делегация событий
• Несколько слов о бенчмарках
• Профайлинг приложений

Скорость отрисовки, плавность анимаций:
• Введение, критерии успеха, методики измерения
• Минимизация reflows и DOM модификаций
• Влияние CSS на скорость отрисовки, определение бутылочных горлышек
• Механизмы рендеринга WebKit / Blink: RenderTree, RenderLayer, GraphicsLayer, Tiled rendering
• Отличие аппаратно ускоренной композиции от стандартного механизма рендеринга, накладываемые ограничения и варианты использования
• Отслеживание и устранение repaints
• Альтернативные методы рендеринга контента и анимаций
• Canvas
• WebGL
• SVG
• Кросс - платформенное тестирование скорости отрисовки с ароматом научных исследований

Расходование памяти и garbage collection:
• Введение, критерии успеха, методики измерения
• Влияние структуры DOM дерева на расход памяти
• Влияние количества загруженных ресурсов
• Повторное использование объектов
• Управление слушателями
• Garbage collection - скрытый враг UX
• Поиск утечек памяти

Особенности человеческого восприятия,  отзывчивость и UI трюки:
• Интерактивность и обратная связь (реакция UI, touch события)
• О природе человеческого зрения, особенностях восприятия