#ui #performance
Оптимизация рендера в iOS: frame buffer, Render Server, FPS, CPU vs GPU (20 мин)
🗣 В статье раскрывается подноготная рендера и жизненного цикла кадра. Также вы получите ряд рекомендаций по оптимизации рендера и достижению заветных 60 (120) FPS
📍 Этапы выполнения анимации
📍 Цикл отрисовки кадра в iOS
📍 Проблемы с производительностью
Оптимизация рендера в iOS: frame buffer, Render Server, FPS, CPU vs GPU (20 мин)
🗣 В статье раскрывается подноготная рендера и жизненного цикла кадра. Также вы получите ряд рекомендаций по оптимизации рендера и достижению заветных 60 (120) FPS
📍 Этапы выполнения анимации
📍 Цикл отрисовки кадра в iOS
📍 Проблемы с производительностью
👏6👍1
#swift #performance
9 Ways to Boost Your Swift Code Performance (5 минут)
🗣 9 способов прокачать производительность проекта на Swift
Статья про базовые советы по перформансу, где автор объясняет, что и почему влияет на производительность, а не просто дает абстрактные советы.
9 Ways to Boost Your Swift Code Performance (5 минут)
🗣 9 способов прокачать производительность проекта на Swift
Статья про базовые советы по перформансу, где автор объясняет, что и почему влияет на производительность, а не просто дает абстрактные советы.
👎3👍2
#performance
Как iOS 16 ускоряет запуск вашего приложения
В статье рассказывается как ускорили запуск приложений в iOS 16 и исправили проблему с тем что запуск приложений со временем становится медленее
Как iOS 16 ускоряет запуск вашего приложения
В статье рассказывается как ускорили запуск приложений в iOS 16 и исправили проблему с тем что запуск приложений со временем становится медленее
👍5👎3
Few ways of improving your iOS APP performance in Swift (4 мин)
Советы по оптимизации iOS приложений:
👉 Optimization level в настройках проекта (-O для наибольшей производительности)
👉 CompilationMode: Whole Module увеличит время компиляции, но может улучшить перфоманс
👉 Уменьшаем использование динамической диспетчеризации (используем модификаторы final, private, fileprivate и internal)
#performance
Советы по оптимизации iOS приложений:
👉 Optimization level в настройках проекта (-O для наибольшей производительности)
👉 CompilationMode: Whole Module увеличит время компиляции, но может улучшить перфоманс
👉 Уменьшаем использование динамической диспетчеризации (используем модификаторы final, private, fileprivate и internal)
#performance
❤2👍2👎1
How 5 iOS apps could improve their startup time by an average of 28%
Проанализировали время загрузки популярных приложений с помощью Emerge Performance Analysis на iPhone SE iOS 15.4.1 и вот что получилось:
United Airlines - 2.05 сек, можно улучшить на 40%
Chipotle - 0.57 сек, можно улучшить на 33%
Curb - 0.8 сек, можно улучшить на 22%
Walmart - 0.67 сек, можно улучшить на 33%
Zoom - 0.27 сек, можно улучшить на 15%
Из интересных наблюдений, United Airlines тратит 48 мс на JSONDecoder.decode(), что либо стоит делать в бекграунде, либо использовать более быстрые решения, а еще 677 мс на загрузку CoreData на main потоке.
Walmart тратит 20 мс на принты😅.
Zoom's просто засыпает на 41 мс на main потоке.
#performance
Проанализировали время загрузки популярных приложений с помощью Emerge Performance Analysis на iPhone SE iOS 15.4.1 и вот что получилось:
United Airlines - 2.05 сек, можно улучшить на 40%
Chipotle - 0.57 сек, можно улучшить на 33%
Curb - 0.8 сек, можно улучшить на 22%
Walmart - 0.67 сек, можно улучшить на 33%
Zoom - 0.27 сек, можно улучшить на 15%
Из интересных наблюдений, United Airlines тратит 48 мс на JSONDecoder.decode(), что либо стоит делать в бекграунде, либо использовать более быстрые решения, а еще 677 мс на загрузку CoreData на main потоке.
Walmart тратит 20 мс на принты😅.
Zoom's просто засыпает на 41 мс на main потоке.
#performance
👍3👎1😢1
How To Boost Your iOS Code Performance: Reduce Searching In Array
Поиск в массиве имеет сложность O(n), но на практике бывает нужно использовать вложенные циклы, таким образом сложность вырастает до O(n²) и сильнее.
На скринах два примера, как оптимизировать код с помощью Set или Dictionary и улучшить перфоманс
#performance
Поиск в массиве имеет сложность O(n), но на практике бывает нужно использовать вложенные циклы, таким образом сложность вырастает до O(n²) и сильнее.
На скринах два примера, как оптимизировать код с помощью Set или Dictionary и улучшить перфоманс
#performance
👍5👎2
Clean Code vs. Performant Code
Чистый код - круто, но не всегда лучшее решение. Выбирайте, как структурировать код, основываясь на своих потребностях.
В статье провели эксперимент, который показывает, что код, основанный на протоколах и полиморфизме, на 30% менее производительный, чем тот, что основан на enum'ах, поскольку полиморфизм требует выявление типа в рантайме.
#performance
Чистый код - круто, но не всегда лучшее решение. Выбирайте, как структурировать код, основываясь на своих потребностях.
В статье провели эксперимент, который показывает, что код, основанный на протоколах и полиморфизме, на 30% менее производительный, чем тот, что основан на enum'ах, поскольку полиморфизм требует выявление типа в рантайме.
#performance
👍6🤔2👎1
Полезная статья с общими советами про оптимальное использование SwiftUI. Не откроет ничего нового для тех кто уже сталкивался с проблемами в производительности, но может помочь тем кто только вкатывается в SwiftUI.
#swiftui #performance
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6👎1
Forwarded from Android Broadcast (Кирилл Розов)
Разработчик из Booking делится зачем делали своё решение для замера производительности приложения во время работы. В статье (EN, 9 мин, ссылка без VPN) рассказывается какие метрики решили замерять и как, а именно: время запуска приложения, время до показа экрана, скорость рендеринга, время простоя
Исходный код для iOS и Android
#performance #analytics
Исходный код для iOS и Android
#performance #analytics