Аннотация Protocol в Python

Поделиться
HTML-код
  • Опубликовано: 10 фев 2025

Комментарии • 35

  • @ZZZMerk
    @ZZZMerk 7 дней назад +1

    Спасибо за ролик! Как раз юзал протокол в качестве аннотации для универсального обработчика)

  • @Димаста-д1ч
    @Димаста-д1ч 6 часов назад

    Я изначально являюсь iOS разработчиком и как раз в языке Swift есть понятие протоколов, суть примерно та же самая и я рад, что в питоне появился этот тип. Однако, в случае iOS разработки, при наследовании сущности от протокола, IDE сразу предлагает реализовать протокольные методы и автоматически объявляет их в коде, что очень удобно и было бы круто увидеть такое в VSCode или PyCharm

    • @SurenKhorenyan
      @SurenKhorenyan  2 часа назад

      Круто!
      В PyCharm можно нажать сочетание клавиш и выбрать заполнение всех методов. Я этот этап пропустил. При наборе метода в наследнике подсказка будет, так тоже нормально

  • @СергейНауменко-ь6н
    @СергейНауменко-ь6н 8 дней назад

    Спасибо Сурен было действительно очень интересно!

    • @SurenKhorenyan
      @SurenKhorenyan  8 дней назад

      Пожалуйста! Очень рад, что вам понравилось! 🥰

  • @nevdupIenysh
    @nevdupIenysh 8 дней назад

    Это забавно, потому что я только вчера искал видео про протоколы у тебя и на нашёл его, а мне это было нужно… Спасибо тебе)

    • @SurenKhorenyan
      @SurenKhorenyan  7 дней назад

      Пожалуйста!
      Если что, в тг канале пощу, что выходит на бусти. И там этот ролик был выпущен ещё в прошлом году 🙂
      Присоединяйтесь

    • @nevdupIenysh
      @nevdupIenysh 7 дней назад

      @@SurenKhorenyan да как раз таки я там есть, и увидел что вышло видео про протоколы, но вот место где это вышло, я не увидел

  • @Alsurnov
    @Alsurnov 8 дней назад

    Полезное видео по протоколам. Лайк+

    • @SurenKhorenyan
      @SurenKhorenyan  7 дней назад

      Кайф, спасибо!
      Рад, что вам понравилось 🥰
      Пожалуйста

  • @user-buser_eto_ja
    @user-buser_eto_ja 8 дней назад

    Сначала лайк, потом просмотр! Как всегда спасибо огромное.

    • @SurenKhorenyan
      @SurenKhorenyan  8 дней назад +1

      Спасибо! Очень рад, что вам понравилось! 🥰
      Пожалуй!
      И за комментарий спасибо 🥰

  • @uncleabe8147
    @uncleabe8147 7 дней назад

    Йоп, Ян😅
    Спасибо за видео!❤

  • @namco368
    @namco368 3 дня назад +1

    Я не понял, всю дорогу мы уговариваем mypy на ругаться, для этого плодим целые сущности, но я так и не понял, в чем необходимость использования mypy? Как будто бы можно использовать что то другое, или отключить строгие правила, не?

    • @SurenKhorenyan
      @SurenKhorenyan  3 дня назад

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

  • @gatos-su
    @gatos-su 8 дней назад +2

    Прочитать документацию за 5 минут - нет.
    30 минут смотреть примеры на гусях и утках, не имеющих отношение к реальности и узнать 5% того, что есть документации по данной теме - да!

    • @SurenKhorenyan
      @SurenKhorenyan  8 дней назад

      Кайф! 🔥

    • @angrycoder18
      @angrycoder18 4 дня назад

      ЗАПОМНИТЕ! 30 минут просмотра ролика могут сэкономить вам 5 минут чтения документации

    • @andrewmoon181
      @andrewmoon181 2 дня назад

      Почему 30 минут? Кто смотрит видео с обычной скоростью? 3х и вот уже 30 минут превращается в 10.

  • @microb3726
    @microb3726 4 дня назад +1

    По сути это реализация интерфейса в языке...

    • @SurenKhorenyan
      @SurenKhorenyan  4 дня назад

      Абсолютно точно! В разных языках по-разному называют

  • @victorkuznetsov5632
    @victorkuznetsov5632 7 дней назад

    Можешь рассказать что за клаву используешь, и че за тема для пайчарма

    • @SurenKhorenyan
      @SurenKhorenyan  7 дней назад

      Привет
      Клавиатура Nuphy Air 75 V2
      Тема One Dark

    • @andrewmoon181
      @andrewmoon181 2 дня назад

      @@SurenKhorenyan Клавиатура Nuphy Air 72 V2 - Сколько заряд держит? Часов? Дней? И как потом заряжать?

    • @SurenKhorenyan
      @SurenKhorenyan  День назад

      ​@@andrewmoon181несколько дней. По Type C зарядка.
      Опечатался, 75 клавиш

  • @AlexAlex-ui5gz
    @AlexAlex-ui5gz 8 дней назад +1

    Чет не совсем ясно, на кой он нужен. А если мы путем наследования расширим наш класс, добавив в него новые методы и всё, приехали? Расширяй и протокол? Если, конечно, я все правильно понял.

    • @SurenKhorenyan
      @SurenKhorenyan  7 дней назад +1

      Здравствуйте!
      Протокол нужен для того, чтобы обозначить, что обязательно должно быть на объекте. Это список минимальных требований, а не строжайшее ограничение по набору свойств

    • @AlexAlex-ui5gz
      @AlexAlex-ui5gz 7 дней назад

      @@SurenKhorenyan Да, но, я так понимаю, новых методов мы всё равно не увидим в подсказке, пока не обновим протокол?

    • @SurenKhorenyan
      @SurenKhorenyan  7 дней назад

      Да, а их там и не может быть. Мы ведь ждём что-то, что только с этим протоколом будет. Опаснт обращаться к свойствам, которых мы не ждали - это приведёт к ошибкам

    • @РоманМинаев-ф9з
      @РоманМинаев-ф9з 4 дня назад

      Протоколы, это абстракция которая помогает разделять код и упрощать твою лапшу. Представь что ты class Human: и тебе нужна лопата, как класс и она должна копать-иметь метод dig(), но тебе не нужна определенна лопата, а любая которая может копать, а какой у нее черенок, ширина лопат, длинна рукояти тебя не интересуют, вот ты объявляешь протокол говоря о том что дайте мне то что может копать и я буду копать, а какой ручкой тебе не важно. Надеюсь объяснил, если тугими словами, то протокол позволяет отвязаться от конкретной реализации и не зависит от неё, что делает код более гибким, адаптируемым, масштабируемым

    • @AlexAlex-ui5gz
      @AlexAlex-ui5gz 4 дня назад

      @@РоманМинаев-ф9з Вот поэтому и не ясно, на кой он нужен. Если я буду писать код по-старинке, то передав человеку класс крота (он тоже имеет метод копать) - получу от IDE сообщение, что я что-то не то делаю, с протоколом же всё будет ок, копай кротом.