Как таскать и зумить тяжелый контент в Compose без лагов
Во многих сферах разработчики сталкиваются с большими изображениями, которые нужно таскать и зумить. Карты, фоторедакторы, графика, медицина.
Compose делает простой UI тривиальным, но создает ложное чувство, что «оно само оптимизирует». Как только контента становится много или взаимодействие становится непрерывным (например, жест pan/zoom по тяжелым данным) — всё рассыпается, и среднестатистический разработчик не понимает, почему и что с этим сделать.
Реализация в лоб гарантированно даст лаги или даже краш. В таких условиях инженер будет вынужден тыкать в случайные «оптимизации» в попытках что-то исправить, потому что работа draw-фазы и GPU для него — черный ящик.
Доклад даст аудитории ментальную модель «куда уходит кадр в Compose» и конкретный инструментарий, чтобы держать 60 fps на контенте, который не влезает в память.
После доклада зритель перестает гадать и начинает четко диагностировать, какой именно враг — память или стоимость кадра — сейчас его кусает и на какую фазу Compose нужно нацелить фикс.