tg-me.com/iosdev/476
Last Update:
Рефакторинг UICollectionView с использованием дженериков в компании Etsy
Распространенный опыт работы с долгоживущими проектами заключается в том, что производительность может стать проблемой по следующим причинам:
1️⃣ Более старый код может не быть спроектирован так, чтобы использовать все преимущества оптимизации платформы и новых возможностей.
2️⃣ Производительность разработчиков также может пострадать.
3️⃣ Сложнее привлекать разработчиков к работе с кодом, который неоднократно изменялся и расширялся в течение многих лет, а также сложнее проверять и тестировать изменения.
Когда приложение Etsy только создавалось, экраны были относительно простыми вещами с ограниченной ответственностью. Имело смысл программировать их более или менее монолитно. Но когда в компании посмотрели на производительность и подумали о болевых точках инженеров, пришло решение, что пора обратить внимание на легаси-код.
В старой реализации, чем больше и сложнее становился экран, тем больше страдала его производительность: сборка одного огромного view заставляла приложение выполнять множество вычислений лэйаута заранее, включая те, которые лучше отложить. Гораздо менее затратный и более гибкий подход предполагает переосмысление экрана как набора независимых views.
📖 В этом материале идет речь о том, что предприняли в компании Etsy для улучшения ситуации. С примерами кода, конечно же.
@iOS Dev
BY iOS Dev

Share with your friend now:
tg-me.com/iosdev/476