Video není dostupné.
Omlouváme se.
Как работает диспетчеризация в iOS на практике + ЛАЙФКОДИНГ
Vložit
- čas přidán 13. 08. 2023
- Всем привет. В данном выпуске мы разберем такую тему как диспетчеризация в iOS, и покажем на практике подводные камни. Всем хорошего просмотра
Подписывайтесь на наш канал в телеграме t.me/ios_prog
самое понятное объяснение диспетчеризации, спасибо
докладчик сам не шарит в теме, но спасибо за озвучку статей с гугла + хороший сон )
Хороший доклад, но не показали про вызов методов у экземпляров, тк там есть нюанс с кастингом типа до протокола либо неявно объявить
Нужен монтаж который ускорит написание когда и уберет минуты молчания, оставить только суть и будет полезное видео на 5-10 мин. Плэйграунд мозги делает☝
х2 в playgorund
Привет, спасибо за материал) У меня вопрос про случай, если в final классе есть метод с одним параметром, тип параметра которого протокольный, при вызове этого метода мы вставляем класс подписанный на этот протокол. В этом случае, при вызове этой функции, диспетчиризация для метода будет witness table, для класса в котором лежит этот метод с параметром протокола будет static? Правильно ли я это понимаю?
Привет, попробуем развернуто))
Если в final классе есть метод с одним параметром, тип которого протокольный, и вы передаете объект класса, который подписывается на этот протокол, то при вызове метода будет использоваться witness table для разрешения динамического типа и вызова соответствующей реализации метода из таблицы.
Что касается static, в вашем контексте это не совсем применимо. Когда компилятор Swift видит вызов метода для объекта, тип которого известен в момент компиляции, он может использовать статическое разрешение вызова метода без необходимости в witness table.
Так что, вкратце, witness table используется для динамического разрешения методов протоколов, а статическое разрешение может использоваться, когда тип известен в момент компиляции.
Как-то так
🔥🔥🔥
👍👍
17:33 Даня пытается не уснуть. (не получается)
я уснул :)
Так а где практика? как я могу убедиться что автор не выдумал все это за полчаса до доклада? Как мне это применить в ежедневной работе?
Извини, не совсем понял, что ты хочешь донести.
@@user-mc2dv9fg1k заголовок не соответствует.