Video není dostupné.
Omlouváme se.

№35 - Все что нужно знать об ARC в Swift | На курсах такого не расскажут

Sdílet
Vložit
  • čas přidán 13. 08. 2024

Komentáře • 173

  • @bwswift
    @bwswift  Před rokem +6

    Доклад Максима про value types
    czcams.com/video/8L5cUiV1qDo/video.html
    Поддержите канал на патреоне!
    www.patreon.com/bwswift

  • @woodensn2020
    @woodensn2020 Před rokem +12

    почти полтора часа нереально крутого урока! Такого точно не расскажут на курсах. Спасибо большое

  • @bulgakov1991
    @bulgakov1991 Před rokem +16

    Лучшее объяснение данной темы которое я слышал! Большое спасибо)

  • @dqueenprinsees
    @dqueenprinsees Před rokem +19

    Спасибо большое за лекцию! Как писали уже ранее на одном дыхании посмотрела. Я знала, что здесь будет что-то, что меня удивит, и так и есть - потрясающе полный и интересный материал по кложурам. Я не знала половину материала, было очень полезно.
    Мне кажется, чуть изменился способ подачи информации по сравнению с первыми видео этого курса. Очень нравится, особенно рубрика "Это спрашивают на собеседование" и "Этого не знают даже senior". Очень много полезной информации в доступном формате.
    Действительно, то, что вы делаете на просторе CZcams, на голову выше и не сравнится с материалами, которые дают на курсах (есть с чем сравнить). Формат 1ч20м чистой информации просто удивляет, и хочется, чтобы ваша мотивация только росла. Желаю очень много подписок на Patreonе.

    • @bwswift
      @bwswift  Před rokem +1

      Благодарю за поддержку и ваш тёплый комментарий!

  • @AlexAlex-vx6me
    @AlexAlex-vx6me Před rokem +5

    Вячеслав вы самый лучший!Лучше вас никто не учит!

  • @user-kk4pk3uy9x
    @user-kk4pk3uy9x Před rokem +6

    Слава, спасибо тебе за лекцию, все как всегда, на высшем уровне!

  • @arseny_borovik
    @arseny_borovik Před 9 měsíci +1

    Самый лучший канал по iOS разработке, который я видел. Спасибо большое!

  • @user-eh7cs3dr8d
    @user-eh7cs3dr8d Před 7 měsíci

    Дякую за вичерпний матеріал, та незрівнянну подачу!!!

  • @_soscooter_6689
    @_soscooter_6689 Před 11 měsíci +2

    невероятно классная лекция
    канал тоже поражает полезностью
    Все очень просто и очень интересно
    Огромное вам спасибо за ваш труд !!!!

  • @maximmatusevich9695
    @maximmatusevich9695 Před 4 měsíci +1

    Спасибо, Вячеслав за отличный материал!

  • @maxkmr7438
    @maxkmr7438 Před rokem +1

    Вячеслав, мне нравится что в одном видео вы объединяете всё по теме, в дном видео по таймкодам отыскать проще(как мне кажется) для повторения, чем ещё и по разным видео искать.💙💛

  • @aiinterviewcopilot
    @aiinterviewcopilot Před rokem +2

    Отличная подача материала! Пожалуй, самые интересные уроки по Свифту в рунете

  • @user-hp8no5tm2t
    @user-hp8no5tm2t Před rokem +2

    Дуже розгорнута відповідь на цю тему. Гарні прикладі. Лекція проглядається на одному диханні.

  • @Mirorval
    @Mirorval Před měsícem

    Офигенная подача!

  • @user-rq4dv1hs1w
    @user-rq4dv1hs1w Před rokem +3

    Круто, професійно, доступно! Дякую!

    • @bwswift
      @bwswift  Před rokem

      Дякую за комент!

  • @oleksandr4449
    @oleksandr4449 Před rokem +3

    Спасибо, Слава! Освежаю теорию, готовясь к собесам и вспоминаю курсы Лёши Скутаренко. Прям по простому, с примерами и визуализацией. Думаю для молодых специалистов это топ.
    Было бы еще неплохо обзавестить каким-то комьюнити, в котором студенты смогут выкатывать свои домашние задания и обсуждать их.

    • @bwswift
      @bwswift  Před rokem

      Благодарю за комментарий, есть чат в телеграмме, там можно задать вопросы и получить ответы

  • @Pro-jz8wg
    @Pro-jz8wg Před rokem +2

    Лучший канал по swift!)спасибо за уроки!!!

    • @bwswift
      @bwswift  Před rokem

      Спасибо за комментарий !

  • @siberian_arg
    @siberian_arg Před 9 měsíci +3

    Ответы:
    -3-ий тип reference type - actor (буду честен, сначала ответил функция, но кложура это и есть функция, потому что в интернете пишут про классы, функции и кложуры - в основном, например в статьях на хабре, понимаю, Хабр не то место где нужно черпать знания. Но начинающему разрабу всегда тяжко в фильтрации материалов, он не понимает, что хорошо, а что плохо, как в моем случае. но спасибо что есть Вы!);
    -2^64 это 16 Эксабайтов.
    14:00 Слепок оперативной памяти и кладет его на диск - просто копию оперативки? извините за глупый вопрос, вот не понятно конкретно слепок чего и что подразумевается под этим? не могу представить абстрактно
    понял что нужно глянуть занятия 13-16. а по факту лучше все пересмотреть.
    после того, как есть некое понимание в разработке, смотреть ваши толковые ролики очень и очень полезно.
    Дякую и Рахмет за проделанный труд! 1час 20 минут и 57 секунд - пролетают не заметно. особенно, когда в лекции полезна каждая минута.

  • @elmira5244
    @elmira5244 Před 6 měsíci

    Лучшее объяснение ARC👍Тысяча благодарностей☺

  • @morrterry
    @morrterry Před rokem +3

    Спасибо большое, за лекцию! Удачи в развитии канала :)

  • @user-pv3xm3mg3u
    @user-pv3xm3mg3u Před rokem +2

    Большое спасибо за Ваш информативный урок!

    • @bwswift
      @bwswift  Před rokem

      И вам спасибо!

  • @tigran.zakaryan
    @tigran.zakaryan Před rokem +1

    Прекрасные 80 минут!

  • @user-gl3uv2nb6j
    @user-gl3uv2nb6j Před 9 měsíci

    Лучшее объяснение arc! Спасибо!

  • @vladyslavsushko1967
    @vladyslavsushko1967 Před rokem +1

    Спасибо за труд, очень современно и доходчиво! Развития каналу!

  • @yaliisk5928
    @yaliisk5928 Před rokem +2

    Спасибо за материал. Всегда очень доходчиво.
    Третий вариант ссылочного типа в swift это, скорее всего, Indirect enum,

    • @bwswift
      @bwswift  Před rokem +1

      Нет. Подсказку ищи в разделе документации concurrency

  • @KonstantinFederal
    @KonstantinFederal Před rokem +3

    Отличный урок! Большое спасибо

  • @dmitrykiri
    @dmitrykiri Před rokem +3

    Лучший, спасибо огромное!

  • @MeMOoo444
    @MeMOoo444 Před 5 měsíci

    спасибо большое ,2 месяца изучаю Свифт , вы объясните проще всех))

  • @vladimirstepanov7246
    @vladimirstepanov7246 Před rokem +1

    Оставляю комментарий в поддержку канала)

  • @raheemgabibov7523
    @raheemgabibov7523 Před rokem +2

    Длинные лекции топ

  • @Andriybiguniak
    @Andriybiguniak Před 11 měsíci

    крута лекція, дякую !

    • @bwswift
      @bwswift  Před 11 měsíci

      І вам дякую!

  • @rembizarre
    @rembizarre Před 7 měsíci

    Шикарный контент. Наткнулся случайно на deinit видео. Молодец. Спасибо

  • @user-iOSnick-dev
    @user-iOSnick-dev Před 9 měsíci

    Очередное спасибо! И только успехов вам!

  • @vitalijsminins8305
    @vitalijsminins8305 Před 10 měsíci +2

    53:02
    почему когда pat = nil, все так вызвался deinit, если есть strong reference cycle между command и pat ?

  • @user-xe5kt2bu6w
    @user-xe5kt2bu6w Před rokem +5

    когда-нибудь скажут: какие-то сильные джуны пошли
    а им ответят: мы учились у В’ячеслав Білий

    • @bwswift
      @bwswift  Před rokem +4

      Мой оффлайн курс был рассчитан на Стронг Джуниоров, что бы после курса им не хватало только коммерческого опыта что бы назваться мидлом. Поэтому так и получается

  • @user-cj9or3ns3w
    @user-cj9or3ns3w Před rokem +2

    Спасибо за Ваши талантливые уроки! А про акторы сможете также понятно рассказать?

    • @bwswift
      @bwswift  Před rokem

      В акторах нет ничего сложного :) но эта тема для отдельного плейлиста по многопоточности

  • @renagurbanovasenglish
    @renagurbanovasenglish Před 4 měsíci

    Кака же ясно объяснили, спасиииибо

  • @mrunicorn-p4x
    @mrunicorn-p4x Před 11 měsíci +2

    Спасибо за очередное невероятно познавательное видео. Листал сообщения, но не нашел такой же мысли: третий ссылочный тип это Функции высшего порядка?

    • @mrunicorn-p4x
      @mrunicorn-p4x Před 11 měsíci

      наверное после лекции внимание рассеялось, увидал правильный ответ - Актор из wwdc21

    • @bwswift
      @bwswift  Před 11 měsíci

      Не

  • @surfspot8043
    @surfspot8043 Před rokem +2

    Спасибо, это одна из лучших лекций по ARC! Можно еще рассказать зачем все-таки два вида слабых ссылок (weak и unowned). Если они оба выполняют одинаковую работу, то в чем профит, кроме опциональности? unowned потребляет меньше ресурсов?

    • @bwswift
      @bwswift  Před rokem +1

      Производительность. Unowned быстрее

  • @SergSphinx
    @SergSphinx Před rokem +1

    На одном дыхании 😊

  • @dinachernykh5702
    @dinachernykh5702 Před rokem +1

    Спасибо за лекцию! Очень интересно и понятно, рада, что нашла ваш канал, дай бог вам здоровья ! Слава Украине

    • @bwswift
      @bwswift  Před rokem

      Благодарю! Героям слава!

    • @emilsh7
      @emilsh7 Před rokem

      Поддерживаю предыдущего оратора

    • @bwswift
      @bwswift  Před rokem

      @@emilsh7 👍

  • @feel9695
    @feel9695 Před 6 měsíci

    Спасибо за лекцию! Достаточно подробно описана работа именно с объектами. Жаль правда не копнули немного в глубину, по типу того как именно удаляются weak и unowned ссылки, сразу они удаляются или какой у них жизненный цикл удаления, Side Tables и так далее. Но подача материала очень прияная. Еще раз спасибо!

    • @bwswift
      @bwswift  Před 6 měsíci +1

      Копнуть в глубину это +2ч к длине видео

  • @Crocopizdel
    @Crocopizdel Před rokem

    посмотрел Максима, очень интересно.

  • @kamilsuleymanov7197
    @kamilsuleymanov7197 Před rokem +6

    3й тип акторы?

  • @surfspot8043
    @surfspot8043 Před rokem +2

    Третьим ссылочным типом может являтся структура если ее передать в метод с использованием аргумента inout. В таком случае передается ссылка а не копия.

    • @bwswift
      @bwswift  Před rokem

      Структура в таком варианте действительно передается по ссылке, но это не делает ее ссылочным типом. А я спрашиваю именно за еще один тип данных

  • @user-lq7ql8yk1j
    @user-lq7ql8yk1j Před měsícem

    Интересно, а что произойдет, если два класса будут ссылаться друг на друга слабыми ссылками? Классы освободятся раньше времени? Код в playground выполняется одинаково. В чем тогда разница? Почему бы повсеместно не использовать weak? Или дело все чисто в неудобстве использования из-за опционалов?

  • @Amirka1719
    @Amirka1719 Před 9 měsíci +1

    Небольшая ремарка, что стэк находится не в ОЗУ, а в кэш-памяти процессора и могут быть помещены в Heap

  • @tiffany668
    @tiffany668 Před rokem +1

    Top like Always 🎉💪🏼

  • @zoomle_iOS
    @zoomle_iOS Před rokem +1

    Спасибо!

  • @zr2x
    @zr2x Před rokem +1

    Спасибо большое за такое объемное видео!
    Подскажите, вы занимаетесь менторством?

    • @bwswift
      @bwswift  Před rokem

      Да, но сейчас поставил на паузу

  • @user-vl6dk7sr4m
    @user-vl6dk7sr4m Před 11 měsíci

    лекция огонь

  • @swiftuz524
    @swiftuz524 Před 11 měsíci

    Просто супер! 👍👍👍

  • @user-rj4ed5fc3y
    @user-rj4ed5fc3y Před 3 měsíci

    спасибо!

  • @user-mh8dt7jb2x
    @user-mh8dt7jb2x Před rokem +1

    26:00 В стеке? Референс типы же вроде хранятся в куче

    • @bwswift
      @bwswift  Před rokem +3

      Тут все правильно. Сам объект находится в куче, но ссылка на этот объект находится в стеке. Мы работаем со ссылками которые лежат в стеке, но эти ссылки ссылаются на объекты в куче.

  • @sarvarqosimov8363
    @sarvarqosimov8363 Před 9 měsíci +2

    👍

  • @shurale85
    @shurale85 Před 9 měsíci

    Не могли бы уточнить, методы/функции хранятся в сегменте TEXT памяти и в каком виде?

  • @maryjay558
    @maryjay558 Před 5 měsíci

    А функция или замыкание внутри структуры хранится вместе со структурой в стеке или в куче? И наоборот: где хранятся int и string, принадлежащие классу, вместе с ним в куче или все же в стеке?

    • @bwswift
      @bwswift  Před 5 měsíci

      Смотрите доклад Макса в закрепленном коментарии

    • @m.d.2029
      @m.d.2029 Před 5 měsíci

      если экземпляр типа значения является частью экземпляра ссылочного типа, то значение сохраняется в куче вместе с экземпляром ссылочного типа. Например, структура сама по себе хранится в стеке, но если эта структура расположена в классе, то так как класс хранится в куче, то и структура будет сохранена в куче.

  • @vladimir.anisimov
    @vladimir.anisimov Před rokem

    Вячеслав, спасибо большое за огромный пласт работы! Очень полезно!
    А где можно посмотреть про диспечиризацию?

  • @InvestorFIRE
    @InvestorFIRE Před rokem

    Спасибо !!!!

  • @user-bd5zm2kc1d
    @user-bd5zm2kc1d Před rokem +1

    Есть мнение, что weak ссылка ссылается не на Heap а на Side Table, так ли это?

    • @bwswift
      @bwswift  Před rokem +1

      Зависит от версии Свифта, в последних да. Эта функциональность так же дает возможность в будущем добавить сторед проперти в extension, но не думаю что это в ближайшем будущем допилят.

  • @Xname00
    @Xname00 Před rokem +1

    Вячеслав, если не трудно, скажите пожалуйста, если ARC контролирует память для ссылочных типов (считает ссылки), то чем контролируются тип значения, когда система понимает что нужно удалить их или она удаляет их, когда они отработали в своем скоупе?

    • @bwswift
      @bwswift  Před rokem +1

      Посмотрите как устроен стек. Когда со стека что-то уходит - оно умирает. Жизнь value types контролируется принципом работы стека.

    • @Xname00
      @Xname00 Před rokem +1

      @@bwswift Благодарю

  • @gabibli
    @gabibli Před 8 měsíci

    Жаль что не была затронута тема Side table

    • @bwswift
      @bwswift  Před 7 měsíci

      Это очень глубоко, не в курсе для начинающих

  • @Iaroslav_beldin
    @Iaroslav_beldin Před rokem +1

    Спасибо! Hearthstone по итогу с утечкой или не правильно понял?)

    • @bwswift
      @bwswift  Před rokem +1

      Да, он был с утечкой, когда я в него играл пару лет назад.

  • @Xname00
    @Xname00 Před rokem +3

    3 тип - функции?

    • @bwswift
      @bwswift  Před rokem

      Это кложуры, их уже назвал

  • @Crocopizdel
    @Crocopizdel Před rokem

    и тот ref-type, который я напишу в комментарии: функция)

    • @bwswift
      @bwswift  Před rokem

      И будеш не прав :)

  • @user-eh7cs3dr8d
    @user-eh7cs3dr8d Před 7 měsíci

    Стосовно третього референс-типу, то це здається AnyObject

    • @bwswift
      @bwswift  Před 7 měsíci

      Не вгадав.

    • @user-eh7cs3dr8d
      @user-eh7cs3dr8d Před 7 měsíci

      @@bwswift я загуглив і знайшов що до референс-типу ще додають функції, але ж це майже те саме що і замикання

  • @vadim_polovoi
    @vadim_polovoi Před 11 měsíci

    Вячеслав, добрый день. Когда может быть куча не одна, а несколько?

    • @bwswift
      @bwswift  Před 11 měsíci +1

      Відповів в телеграм каналі
      t.me/bwswift/442

    • @vadim_polovoi
      @vadim_polovoi Před 10 měsíci

      Спасибо, присоединился)@@bwswift

  • @qyrgyzca
    @qyrgyzca Před rokem +1

    ✊🏻

  • @user-hx9fu1tb9k
    @user-hx9fu1tb9k Před 5 měsíci

    Третий референс тип - это Delegate!

    • @bwswift
      @bwswift  Před 5 měsíci

      Нет!

    • @user-hx9fu1tb9k
      @user-hx9fu1tb9k Před 5 měsíci

      @@bwswift Функции

    • @bwswift
      @bwswift  Před 5 měsíci

      @@user-hx9fu1tb9k этот я назвал! Не считается!

    • @user-hx9fu1tb9k
      @user-hx9fu1tb9k Před 5 měsíci

      @@bwswift Акторы

    • @m.d.2029
      @m.d.2029 Před 5 měsíci

      @@user-hx9fu1tb9k
      В Swift классы, акторы и замыкания являются ссылочными типами.

  • @user-ql8vf9xr1k
    @user-ql8vf9xr1k Před rokem +1

    а GCD будет?)

    • @bwswift
      @bwswift  Před rokem

      Будет но не скоро

  • @vladloktionov5860
    @vladloktionov5860 Před rokem

    Reference Type - Classes, Closures, Protocols

  • @IlnurMugaev
    @IlnurMugaev Před rokem +1

    3-й reference type - indirect enum?

    • @bwswift
      @bwswift  Před rokem

      Не.

    • @IlnurMugaev
      @IlnurMugaev Před rokem

      @@bwswift аргументы inout?

    • @bwswift
      @bwswift  Před rokem

      @@IlnurMugaev не. Прдсказку ищи в разделе документации concurrency

    • @IlnurMugaev
      @IlnurMugaev Před rokem

      @@bwswift ага нашел, actor вроде используется с версии Swift 5.5, это, насколько я понял, минимальная версия iOS 15 должна быть?

    • @bwswift
      @bwswift  Před rokem

      @@IlnurMugaev во время выхода фичи - да. Но они продолжали работать над back-deployment что бы это работало с 13+, но я не следил за этими изменениями после релиза. Так что теоретически уже может работать и с 13+ если доделали.

  • @user-sq3jx1ip3d
    @user-sq3jx1ip3d Před 9 měsíci

    In Swift, classes, actors, and closures are all reference types. upd: приєднуюсь до всіх вдячних людей))

    • @bwswift
      @bwswift  Před 9 měsíci

      Все вірно!

  • @Lucktimerfull22
    @Lucktimerfull22 Před rokem

    Самая сложная тема, порой не понятно в какой последовательности ARC удаляет классы….

    • @bwswift
      @bwswift  Před rokem

      на каком первая пропала стронг ссылка тот и удаляется первым и дальше каскадом

  • @LilSweep
    @LilSweep Před 9 měsíci

    И ф-ции 3ий тип.

  • @LilSweep
    @LilSweep Před 9 měsíci

    18.4 ярда тб может поддерживать операционка на 64 битах 😂

  • @rinata9099
    @rinata9099 Před rokem

    Пора уже свою школу открывать )

  • @etronik3339
    @etronik3339 Před rokem +6

    Коротко о Reference Cycle - Цирк уехал, клоуны остались

  • @borispapush5448
    @borispapush5448 Před 11 měsíci

    Привет из Москвы 💙💛
    Печально, что ваши новые видео выходят на украинском языке и недоступны для понимания россиянам и многим другим жителям СНГ :(

    • @bwswift
      @bwswift  Před 11 měsíci +10

      Може це знак що пора починати вчити українську?

    • @kav04
      @kav04 Před 8 měsíci

      я на видео у Максима Дивертидо подучился понимать украинскую мову @@bwswift

  • @yrashkaaa
    @yrashkaaa Před 3 měsíci

    2 в 64 степени - 1 = 18 446 744 073 709 551 615. Или другими словами: Восемнадцать квинтиллионов четыреста сорок шесть квадриллионов семьсот сорок четыре триллиона семьдесят три миллиарда семьсот девять миллионов пятьсот пятьдесят одна тысяча шестьсот пятнадцать.

  • @MaxTymchii
    @MaxTymchii Před rokem

    Заціни прикол.
    class A {
    deinit {
    print("Deinit")
    }
    }
    var a: A? = A()
    print("\(CFGetRetainCount(a))")
    a = nil
    Як думаєш, яке число буде в print?
    Знаєш чому так?

    • @TheKarleone77
      @TheKarleone77 Před 11 měsíci

      А чому так?

    • @MaxTymchii
      @MaxTymchii Před 11 měsíci

      Треба гуглити, але я не знаю чому так індексація починається@@TheKarleone77