Design patterns в swift с нуля: урок 1 - Singleton(Одиночка) and Intro

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 ต.ค. 2024

ความคิดเห็น • 65

  • @dm_nechaev
    @dm_nechaev 3 ปีที่แล้ว +2

    Просто знай, что мы тебя любим и ты нам нужен

  • @dmitrypolurezov9745
    @dmitrypolurezov9745 5 ปีที่แล้ว +20

    Отличное видео, спасибо 👍🏻 От себя хотел бы добавить что при реалации паттерна Singleton использую приставку "final" для class с целью закрыть класс от наследования.
    final class ExampleSingleton {
    static let sharedInstance = ExampleSingleton()
    private init() {
    }
    }

  • @ozolc
    @ozolc 6 ปีที่แล้ว +20

    Маэстро в деле. Гипер полезная тема. Плюсую.

  • @user-iOSnick-dev
    @user-iOSnick-dev ปีที่แล้ว +1

    Большое спасибо! Это был лучший урок по данной теме. Успехов!!!

  • @alexandergalkin4874
    @alexandergalkin4874 5 ปีที่แล้ว +2

    Главное не забрасывай канал, очень интересно и доходчиво!

  • @vbdevs
    @vbdevs 6 ปีที่แล้ว +8

    Ура, наконец-то паттерны. Спасибо за уроки !!!

  • @antonilin3123
    @antonilin3123 6 ปีที่แล้ว +5

    Странно, а кто поставил дизлайк интересно? может случайно! Я часто встречаю в классах эту байду и никак не мог понять нахрена? извиняюсь за жаргон! А оказалось всё проще некуда :)) Что касается самого объяснения, то вполне ясно и доходчиво дано объяснение. Правда если соооовсем новичок то въехать сложнее, а так, если часто встречаешь в разных примерах синглетон и мало где дано объяснение, то ВОТ ТУТ Евгений как раз и шасшифровал данное понятие и зачем оно нужно :) Спасибо за урок! :)

    • @theswiftdevelopers1301
      @theswiftdevelopers1301  6 ปีที่แล้ว

      дальше тоже расшифруем

    • @ozolc
      @ozolc 6 ปีที่แล้ว +1

      Хейтеры видимо. Гореть им в аду.

  • @arturmavlyuchenko7647
    @arturmavlyuchenko7647 6 ปีที่แล้ว +3

    Отличное видео с хорошим началом). Ждём продолжения!)

  • @АцамазБицоев-д1м
    @АцамазБицоев-д1м 6 ปีที่แล้ว +1

    Наконец-то понятно о парттернах, спасибо большое!!!🔥🔥

  • @swiftproger
    @swiftproger 6 ปีที่แล้ว +1

    Оу-оу, Евгений сново в деле, еще не смотрел но уже лайкую 🙂 спасибо тебе, в предвкушении 🙂

  • @Denim-qk9th
    @Denim-qk9th ปีที่แล้ว

    Спасибо, все очень понятно

  • @sergeybizunov6387
    @sergeybizunov6387 5 ปีที่แล้ว

    По Синглтону добавлю один момент, когда сам изучал паттерны, наткнулся на один парадокс. Книга Э.Гамма и др. "Приёмы объектно-ориентированного проектирования. Паттерны проектирования" с.132. Цитирую "...допускает переменное число экземпляров. Паттерн позволяет вам легко изме􏰀нить свое решение и разрешить появление более одного экземпляра класса Singleton.". Для меня это прозвучало как гром среди ясного неба, но чтобы те, кто изучает данную тему понимали, что бывают разные ситуации и казалось бы одиночка - значит один, но нет, шаблон допускает исключение из правил.

  • @ИгорьЧумиков-й5б
    @ИгорьЧумиков-й5б 4 ปีที่แล้ว

    Евгений , Спасибо большое за труды) очень понятно, доступно обьяснил)

  • @ВиталийИсхаков-ъ8с
    @ВиталийИсхаков-ъ8с 6 ปีที่แล้ว

    Отличный урок, просто и доходчиво! Спасибо Евгений.

  • @ВикторияТихомирова-у3с
    @ВикторияТихомирова-у3с 3 ปีที่แล้ว +1

    Очень круто и понятно!! Спасибо огромное🥰

  • @FlyerChannel
    @FlyerChannel 4 ปีที่แล้ว +1

    Спасибо огромное за понятное объяснение!!

  • @VictorKushnerov
    @VictorKushnerov 5 ปีที่แล้ว +1

    Спасибо, отличный урок и комментарии.

  • @111AlexF
    @111AlexF 2 ปีที่แล้ว

    здорово, а я боялся))) СПасибо, очень понятно и подробно

  • @УчительЛитературы-х5щ
    @УчительЛитературы-х5щ 5 ปีที่แล้ว

    Спасибо, что Вы есть. Здравствуйте.

  • @Twenytoo
    @Twenytoo 3 ปีที่แล้ว

    Спасибо! Все коротко и ясно.

  • @sergeybizunov6387
    @sergeybizunov6387 5 ปีที่แล้ว

    Привет Евгений! Поздравляю с Новым годом, желаю творческих успехов и отличного настроения! Давно не заходил на твой канал, а тут столько вкусного появилось )). За паттерны (или "Шаблоны проектирования") тебе отдельное спасибо, тема эта очень нужная, плюс с твоей гениальной подачей материала, она зайдёт всем легко, я даже не сомневаюсь.

    • @theswiftdevelopers1301
      @theswiftdevelopers1301  5 ปีที่แล้ว +2

      Спасибо, очень много времени трачу что б очень понятно рассказать

    • @theswiftdevelopers1301
      @theswiftdevelopers1301  5 ปีที่แล้ว

      И тебя с новым годом и успехов

  • @magomedn2057
    @magomedn2057 2 ปีที่แล้ว

    Спасибо за урок!

  • @MegaDigri
    @MegaDigri 5 ปีที่แล้ว

    Как всегда на высоте 🔝🔝🔝

  • @alexandergalkin4874
    @alexandergalkin4874 5 ปีที่แล้ว

    Супер, спасибо за уроки!

  • @den6335
    @den6335 2 ปีที่แล้ว

    Спасибо Вам!

  • @Vitsky
    @Vitsky 6 ปีที่แล้ว

    Отличные видео, спасибо большое!

  • @StalkerSergeant
    @StalkerSergeant ปีที่แล้ว

    Спасибо

  • @arturgedakyan7531
    @arturgedakyan7531 3 ปีที่แล้ว

    Классный урок

  • @jandeveloper
    @jandeveloper 6 ปีที่แล้ว +2

    Супер курс! То что надо! Только не объяснили как выгружать свойство static...

    • @arturmavlyuchenko7647
      @arturmavlyuchenko7647 6 ปีที่แล้ว

      Zhan Swift зачем его выгружать? Потом, ты можешь задать атрибут class, но тогда надо будет делать свойство вычисляемым

    • @ivanlyuhtikov3871
      @ivanlyuhtikov3871 5 ปีที่แล้ว +2

      не говори того чего сам не понимаешь
      @@arturmavlyuchenko7647

  • @alexxxbill2031
    @alexxxbill2031 6 ปีที่แล้ว

    Продолжаем!!!

  • @karavaevatasha
    @karavaevatasha 3 ปีที่แล้ว +2

    "кто не знает, может кто-то знает, я не знаю". Извините, не удержалась

  • @ЕвгенийСычёв-п8у
    @ЕвгенийСычёв-п8у 6 ปีที่แล้ว

    спасибо, все круто, ты пушка, бомба)

  • @chingizzholdaspayev688
    @chingizzholdaspayev688 3 ปีที่แล้ว

    Спасибо!

  • @AlekSanAndreas
    @AlekSanAndreas 6 ปีที่แล้ว

    Отличное видео

  • @sergeysafiullin446
    @sergeysafiullin446 6 ปีที่แล้ว

    спасибо большое

  • @НиколайМ-и5щ
    @НиколайМ-и5щ 6 ปีที่แล้ว +7

    эх...я так ждал Core Data ....(минусовая не я если что))))

  • @cruelcoding
    @cruelcoding 6 ปีที่แล้ว +1

    Спасибо! Кстати, у URLSession shared определена не как static, а как class var. Понял, что разница в возможности override - static нельзя перекрыть, class var - можно. Можно ли определить shared у Settings как class var и какие возможны еще нюансы в этом случае?

    • @theswiftdevelopers1301
      @theswiftdevelopers1301  6 ปีที่แล้ว

      разницы тут нет и static и class несут одну и туже смысловую нагрузку

  • @ГеоргийСоколов-э6ъ
    @ГеоргийСоколов-э6ъ 5 ปีที่แล้ว

    Хорошо бы дополнить данный урок реализацией синглтона с ленивой и потокобезопасной инициализацией.

  • @theswiftdevelopers1301
    @theswiftdevelopers1301  4 ปีที่แล้ว

    Куда присоединиться:
    1.Наше сообщество в вк(добаляемся к более 3,5 тыс) = vk.com/theswiftdevelopers
    2.В телеграмме мы помогаем новичкам и всем желающим (нас больше 1,500 тыс) - t.me/joinchat/BAn0BkLMGrfpDYy2cnysNg
    p.s
    Домашние задание: смотрите в группах!
    Если все понравилось ты знаешь что делать;)
    Ставь лайк и пиши комент! :)

  • @rufatz
    @rufatz 6 ปีที่แล้ว

    Отлично. А когда следующий?

    • @theswiftdevelopers1301
      @theswiftdevelopers1301  6 ปีที่แล้ว

      как время появиться)

    • @rufatz
      @rufatz 6 ปีที่แล้ว

      @@theswiftdevelopers1301 Я готов донатить, если это может способствовать ускорению процесса :)

    • @theswiftdevelopers1301
      @theswiftdevelopers1301  6 ปีที่แล้ว

      вот тут обычно донатят vk.com/app5727453_-139873795

  • @Денис-ж3ф5р
    @Денис-ж3ф5р 3 ปีที่แล้ว

    4:04 singleton without E at the end of the work

  • @ХизирДудуев-м1у
    @ХизирДудуев-м1у 6 ปีที่แล้ว

    А если мы сделаем это паттерн не через STATIC переменную, а все свойства статическими? Что измениться ?

  • @fob9984
    @fob9984 6 ปีที่แล้ว

    Ждем некст

  • @wingoff1188
    @wingoff1188 5 ปีที่แล้ว

    Спасибо за урок! Есть вопрос - если после описания какого-нибудь создаваемого класса, например, сразу после последней закрывающей его скобки, сделать сразу экземпляр класса, например: let inst = СlassName(), экземпляр тоже получается глобальный и не уничтожается и в единственном экземпляре. Но есть плюс - легче к нему обращаться (меньше писанины:-)), например: inst.funcName() вместо ClassName.shared.funcName(). Почему все же применяют Singletone? Спасибо!

  • @amin--hj8mc
    @amin--hj8mc ปีที่แล้ว

    Автор, так намутить на ровном месте нужно было уметь. Что тут поняли благодарившие - тайна сия велика есть. Хотя сама суть предельно проста. Классы - тоже объекты (по факту, в определении это называется "статический объект класса" (наплодили сущностей)), причем синглтоны. Причем статические методы и переменные - именно их. Через статический метод-конструктор они порождают обычные объекты(этот паттерн нужно было дать раньше). Это прекрасно расписано (ибо на поверхности) в Objective C. Так что свою "единственность" синглтон в вашем примере берет от класса.

  • @kikiwora
    @kikiwora 5 ปีที่แล้ว +1

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

    • @theswiftdevelopers1301
      @theswiftdevelopers1301  5 ปีที่แล้ว

      как показывает опыт переводить нужно все )

  • @betlines
    @betlines 4 ปีที่แล้ว

    уроки низкого качества

  • @FominValera
    @FominValera 3 ปีที่แล้ว

    Спасибо

  • @user-ktulkhu
    @user-ktulkhu 4 ปีที่แล้ว

    Спасибо