Производительность для всех Заметка

Производительность для всех

Производительность имеет решающее значение для мобильных приложений, подобно такой базовой функции, как время на часах. Pinterest уделяет большое внимание измерению, защите и улучшению производительности ключевых пользовательских сценариев. Воспринимаемая пользователем задержка, отражающая время ожидания пользователем контента, является жизненно важным показателем производительности. Измерение этой задержки, особенно времени до визуального завершения, ранее было сложным и трудоемким. Поскольку время до визуального завершения сильно варьируется, требовалась индивидуальная логика измерения, что препятствовало работе над производительностью. Команда по производительности Pinterest искала простое решение для инженеров-разработчиков, чтобы получить доступ к данным о задержках. Это привело к интеграции логики визуального завершения в базовый класс пользовательского интерфейса, автоматически измеряя задержку для любой поверхности пользовательского интерфейса. Система работает путем обхода дерева представлений, идентификации и отслеживания ключевых медиа-представлений для отслеживания прогресса рендеринга. Эта унифицированная система предоставляет данные о задержках для более чем 60 поверхностей Android, помогая в мониторинге производительности. Она позволяет проводить справедливые сравнения производительности между различными функциями, в том числе с коротким сроком службы. Этот упрощенный подход делает производительность видимой для всех инженеров, способствуя оптимизации воспринимаемой пользователем задержки. Аналогичные реализации были также распространены на платформы iOS и веб.
CdXz5zHNQW_E0CjwHBss6.png