Основная канва доклада - рассказ о серии оптимизаций Duit (BDUI-фреймворка), целью которых было избавиться от лишних аллокаций объектов при обновлениях/анимациях и максимально сократить время парсинга данных.
Основные тезисы:
1. Обозначаем проблемы: огромное количество лишних короткоживущих объектов в ходе обновления/анимаций, что приводило к нагрузке на сборщик мусора (GC) и снижению производительности.
2. Непопулярные фичи языка и ручные оптимизации на страже производительности: заставляем компилятор генерировать более эффективный машинный код.
3. Финализируем результаты: ~15x ускорение подготовки обновления, избавляемся от дополнительных аллокаций, считаем сэкономленные наносекунды.
4. Приятные бенефиты и неочевидные преимущества: поговорим про то, что дали проекту эти эксперименты помимо скорости работы.
5. Уроки школы перформанса: завершим доклад вдохновляющим монологом.