Перейти к содержимому

Диспетчеризация методов протоколов в Swift: мелочи, которые имеют значение

The Code Bird и Yakov Manshin

0:00 / 0:00

Диспетчеризация методов протоколов в Swift: мелочи, которые имеют значение

617 просмотров · 8 месяцев назад
The Code Bird и Yakov Manshin
617 просмотров · 8 месяцев назад
Протоколы играют важнейшую роль в проектировании программного обеспечения, но то, как вы их используете, оказывает огромное влияние на производительность кода во время выполнения. В этом видео я подробно расскажу о диспетчеризации методов протоколов в Swift. Также смотрите отдельный выпуск о диспетчеризации методов в целом:    • How Swift *Really* Calls Functions in Your...   Вы увидите, как протоколы как экзистенциальные типы работают через экзистенциальный контейнер и используют Protocol Witness Table для поиска реализаций в рантайме; почему протоколы, используемые в качестве универсальных ограничений (generic constraints), стремятся обеспечить максимальную производительность, но всё же не могут гарантировать полную мономорфизацию (специализацию) дженериков и статическую диспетчеризацию; и как расширения протоколов, благодаря своей простоте, иногда могут вызвать путаницу. Понимание этих базовых механизмов в Swift — это не просто теория, а секретный ключ к тому, чтобы сделать ваш софт быстрее, надёжнее и эффективнее! Это заключительный эпизод моей мини-серии о протоколах в Swift. Но впереди ещё много важных тем для изучения! Подпишитесь на канал, чтобы видеть новые видео первыми. Поддержите The Code Bird… • …присоединившись как участник:    / @thecodebird   • …став патроном: https://url.ykvm.com/patreon • …оставив чаевые: https://url.ykvm.com/bmac Главы: • 0:00 Начало • 0:39 Краткий обзор диспетчеризации методов • 1:15 Почему протоколы как экзистенциальные типы работают медленные • 3:28 Как обобщённые ограничения не гарантируют статическую диспетчеризацию • 6:10 Почему расширения протоколов устроены намного проще… • 7:05 …и как они могут вас запутать • 10:09 Краткое содержание • 11:05 Заключение к эпизоду и сериалу The Code Bird, проект Якова Маншина 🎞️ #Swift #протоколы #разработкаПО