Диспетчеризация методов протоколов в Swift: мелочи, которые имеют значение
Загружено: 2026-01-09
Просмотров: 204
Протоколы играют важнейшую роль в проектировании программного обеспечения, но то, как вы их используете, оказывает огромное влияние на производительность кода во время выполнения. В этом видео я подробно расскажу о диспетчеризации методов протоколов в 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 #протоколы #разработкаПО
Доступные форматы для скачивания:
Скачать видео mp4
-
Информация по загрузке: