Ответ
60 fps (кадров в секунду) — это стандартная частота обновления экрана большинства iOS-устройств. "Золотым" оно называется, потому что достижение стабильных 60 fps обеспечивает визуально плавный и отзывчивый интерфейс.
Техническое обоснование:
- Дисплей обновляется каждые ~16.7 мс (1000 мс / 60 кадров).
- Система должна уложить все вычисления для одного кадра (layout, draw, commit) в этот интервал.
- Падение ниже 60 fps воспринимается как "лаги" (jank).
Как достичь и измерить 60 fps:
- Избегайте блокировок главного потока: Выносите тяжелые вычисления, сетевые запросы и работу с диском в фоновые очереди.
- Оптимизируйте рендеринг:
// Вместо постоянных пересчетов в real-time: view.layer.cornerRadius = 10 // Дешево view.layer.shadowPath = UIBezierPath(rect: view.bounds).cgPath // Предвычисление тени — оптимизация - Используйте инструменты:
- Instruments > Core Animation: Проверяйте FPS и находите проблемные места (missed vsync, off-screen rendering).
- Debug > Color Offscreen-Rendered Yellow: Подсвечивает дорогие слои.
Для устройств с ProMotion (120 Hz): Целью становится 120 fps. Используйте CADisplayLink с preferredFramesPerSecond для адаптации.