Кристиан Бенуа — Влияние Swift Runtime на производительность приложения

Кристиан Бенуа — Влияние Swift Runtime на производительность приложения

387 Lượt nghe
Кристиан Бенуа — Влияние Swift Runtime на производительность приложения
Ближайшая конференция: Mobius 2025 Spring, 9–10 апреля, Москва + онлайн. Подробности и билеты: https://jrg.su/ojGU3B — — Скачать презентацию с сайта Mobius — https://jrg.su/OAs93p Доклад о методе swift_conformsToProtocol из Swift Runtime. Спикер рассказал, что это за метод, как он работает под капотом, почему так долго выполняется и как свести к минимуму количество вызовов метода. Объяснил, какой код может работать медленно из-за явного или неявного вызова swift_conformsToProtocol: вызовы as?/as! SomeProtocol, String(describing:) и дженерик-типы с type-generic-constraint. Показал внутрянку String(describing:). Объяснил, почему этот вызов такой долгий. Рассказал, чем и когда можно заменить String(describing:). Вы узнаете, как в команде спикера оптимизировали вызовы as?/as!, где без них никак не обойтись, а также увидите пару приемов, которые позволяют уйти от вызовов as?/as!. Кристиан рассказал про форк SnapKit, в котором убрали все вызовы as?/as!. Поговорили о том, чем плохи type-generic-constraint, почему они вызывают метод swift_conformsToProtocol. Спикер показал на примерах, чем заменить type-generic-constraint, и рассказал, что делать, если без них совсем не обойтись. В конце — набор рекомендаций, как малой кровью ускорить работу вашего приложения. Будет полезно iOS-разработчикам, которые хотели бы ускорить свои мобильные приложения.