ООП Python 11 Декоратор Property (Property decorator)

แชร์
ฝัง
  • เผยแพร่เมื่อ 20 ม.ค. 2025

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

  • @egoroffchannel
    @egoroffchannel  8 หลายเดือนก่อน

    🔥Более 180 практических заданий по ООП и все материалы по данному курсу находятся здесь:
    stepik.org/a/114354
    По промокоду EGOROFF можно получить 10% скидки на данный курс

  • @ЕрвандАгаджанян-в3к
    @ЕрвандАгаджанян-в3к 3 ปีที่แล้ว +27

    Артем, спасибо тебе огромное) это гениальное видео) Правда, чтобы досконально все понять, мне потребовалось его пересмотреть раз 40 в течение года)
    На самом деле все крайне доходчиво и понятно!!

  • @МарияКосолапова-п8м
    @МарияКосолапова-п8м 4 ปีที่แล้ว +21

    Это точно пранк. Аахахахх... Сижу на уроке уже 30 мин. ловлю каждое слово про каждую операцию, все осмысливаю по 10 раз, запоминаю. А в итоге все можно записать в одну строку. Это круто. Спасибо, что объясняете все так тщательно и выполняете операции разными способами. Ваши уроки помогают постичь суть языка и разобраться в самых тонких нюансах. Лайк

  • @cashshish
    @cashshish 4 ปีที่แล้ว +2

    После второго просмотра, всё становится более - менее понятно. Декоратор property помогает избавиться от двойной функциональности в коде и облегчает работу. Самое главное запомнить синтаксис, но тут уже нужна практика. Спасибо за видео.

  • @YbisZX
    @YbisZX 4 ปีที่แล้ว +14

    До 3:00, по сути, описывается (запутанно) три способа задать свойство:
    1) balance = property(fget=get_balance, fset=set_balance, fdel=del_balance)
    2) balance = property().getter(get_balance).setter(set_balance).deleter(del_balance)
    3) balance = property(get_balance, set_balance, del_balance)
    Далее с декораторами производится поэтапная загрузка свойства функциями, без их самостоятельного определения.
    Но зачем? Спрятать методы, оставив свойства, можно через private-наименования (__get_balance).
    Основные парадигмы Питона: "Явное лучше неявного, простое лучше сложного". Конечно, это все субъективно. Полезно на таких заморочках понимать, как это работает в принципе, чтобы не впадать в ступор, увидев такое в чьем-то проекте.
    Но для себя я пока не вижу смысла в таких конструкциях...

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

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

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

      но почему, если мы вновь обращаемся к прежним свойствам, то они не отрабатывают полностью? например, для setter мы должны обратиться к getter и получить return, но в таком случае должно вывестись print с get, чего не происходит.. почему??

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

    Какое гениальное объяснение! показать как все сложно сделать без новых знаний, а затем показать как все просто с новыми знаниями. Топовый уровень преподавания)

  • @veronikabond4865
    @veronikabond4865 2 ปีที่แล้ว +1

    Сложная тема, дошло не сразу. Возникла мысль: впервые не понятно сразу, как объяснил Артем - странно, что-то со мной не так)) Даже пришлось загуглить доп материал. Почитав комменты, поняла, что я не одна такая. Артем, спасибо за уроки, за труд, лучшие материалы!

  • @bogdanbogdanov439
    @bogdanbogdanov439 4 ปีที่แล้ว +27

    Из этого видео провалился в урок по декораторам. Из него провалился в урок про замыкания. Суммарно потратил 2 дня, чтобы понять/переварить всю информацию, а теперь сижу и понимаю, насколько это всё просто, но всё же не сразу доходит идея, для чего нужны эти "инструменты".

    • @РустамРаджабов-ц3м
      @РустамРаджабов-ц3м 10 หลายเดือนก่อน +1

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

  • @vegzuzvegzuz2866
    @vegzuzvegzuz2866 4 ปีที่แล้ว +55

    78 видео уроков все шло отлично... и тут я завис.

    • @egoroffchannel
      @egoroffchannel  4 ปีที่แล้ว +11

      сложная тема, как вариант можно пропустить и потом к ней вернутся

    • @ОлександрКуліш-п4и
      @ОлександрКуліш-п4и 4 ปีที่แล้ว +2

      у меня тоже самое

    • @dishenyt
      @dishenyt 3 ปีที่แล้ว +1

      @@egoroffchannel как по мне , все легко

    • @Asmolovskyi
      @Asmolovskyi 2 ปีที่แล้ว +1

      @@egoroffchannel Прошёл заново уроки про декораторы и замыкания (4 урока) , потом ещё раз этот и всё стало понятно в моем сознании что откуда и зачем... потом вернуться это не обо мне )))

    • @ЭмметтБраун-у3т
      @ЭмметтБраун-у3т 5 หลายเดือนก่อน

      @@Asmolovskyi неважно,что за язык программирования ,главное кто его учит)

  • @СергейНовиков-ш8ю
    @СергейНовиков-ш8ю 11 หลายเดือนก่อน

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

  • @sir6681
    @sir6681 4 ปีที่แล้ว +6

    Дело в том, что не успеваешь следить за мыслью, откуда что берется и куда. Если бы была нарисована схемка, то было бы проще)

  • @ЕвгенийПоловинский-в6у
    @ЕвгенийПоловинский-в6у 4 ปีที่แล้ว +1

    Артем, Браво! Спасибо большое.

  • @mikha4843
    @mikha4843 4 ปีที่แล้ว +24

    обрадовался, что наконец-то нашел классного преподавателя, но на каком-то этапе все равно все сливается в кашу и слова становятся просто набором звуков...

    • @egoroffchannel
      @egoroffchannel  4 ปีที่แล้ว +37

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

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

      @@egoroffchannel Да пожалуйста, очень непростая тема!

    • @As-hv9fj
      @As-hv9fj 3 ปีที่แล้ว

      @@egoroffchannel тяжёлая тема)

    • @НиколайМануилов-и1д
      @НиколайМануилов-и1д 3 ปีที่แล้ว +2

      @@egoroffchannel моё мнение - такие темы нужно то ли делить на более маленькие видео, для более эффективного усвоения. Ведь вроде бы всё и понятно, но вот что бы проследить всю линию изменения кода... Ух... очень нужно постараться. Мозг не успевает и не понимает - зачем это делается. Ну и конечно нужно в разы больше практических задач, просто в десятки раз

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

    _Отлично! Благодарю за урок!_

  • @era_life
    @era_life 2 ปีที่แล้ว +1

    Супер понятно !Лучшие обучающие видео по пайтону 😍

  • @АндрейПанов-т1в
    @АндрейПанов-т1в 3 ปีที่แล้ว

    Вы гений объяснения! Лайк

  • @ГерманРыков-ъ6в
    @ГерманРыков-ъ6в 3 ปีที่แล้ว +2

    Артём здравствуйте. Еще раз спасибо за Ваши полезные, а самое главное понятные уроки. Про Вас рассмотреть возможность описать property как клас. Думаю тогда (таким как я) будет легче понять этот объект. Прошу также по возможности коснуться property в Вашем курсе по ООП.

  • @МаксимНиколаевичЧубин
    @МаксимНиколаевичЧубин 4 ปีที่แล้ว +1

    Отличное объяснение! Спасибо. Раньше обходил эти вещи стороной. Теперь понятно.

  • @КацубаМихаил
    @КацубаМихаил 3 ปีที่แล้ว +2

    Суть без технических деталей:
    1. Задолбаешься в 2 местах имена менять, поэтому свойства удобнее писать над функцией;
    2. Задолбаешься вспоминать названия функций, поэтому для стандартных действий названия не нужны, вместо них название атрибута, а сверху обозначение что эта функция по стандарту делает.

  • @АндрейДок-е7и
    @АндрейДок-е7и ปีที่แล้ว

    Заворачивали, заворачивали и на финише завернули мне мозги. Теперь пару дней буду раскладывать всё по полочкам чтобы ничего не упустить для полного понимания.

  • @ZaebaliNN
    @ZaebaliNN 4 ปีที่แล้ว +24

    Я один мало понял зачем это нужно?

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

      Я тоже пока не понимаю сферу применения этого функционала, но если понадобится, то в голове всплывёт )

    • @РусланСальманов-ч1в
      @РусланСальманов-ч1в 4 ปีที่แล้ว +4

      @@traffox геттеры и сеттеры в других языках программирования нужны, чтобы получать доступ к private полям(свойствам). Просто принято, что для защиты данных, к полям(свойствам) классов применять private модификатор (т.е. инкапсулировать). Тут приходят геттеры и сеттеры, которые помогают получать доступ к private полям так, как пожелает этого разработчик программы. Надеюсь, вы поняли)

    • @who-1880
      @who-1880 4 ปีที่แล้ว +1

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

    • @azarovdimka86
      @azarovdimka86 4 ปีที่แล้ว +7

      @@РусланСальманов-ч1в вы говорите, что setter & getter нужны для доступа к приватным свойствам объекта. Свойства объекта ранее сделали приватными чтобы их защитить, а так? . а смысл тогда опять в этой защите, если в них можно получить доступ также через сеттеры и геттеры???

    • @gekale8658
      @gekale8658 3 ปีที่แล้ว +1

      Это полностью про синтаксический сахар - в глобальной области скобочки типа не нужны, присваивание через равно, и вместо трех имен на три функции одно

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

    Отличное объяснение.

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

    Посмотрел уроки по замыканиям и декораторам. В принципе понял, но возник вопрос касательно 10:00
    Когда мы присваиваем методу Сеттер функцию с отличным названием, то почему при обращении к ней, она работает как Геттер?
    Ей передаются все методы из свойства myBalance?

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

      вся эта хрень нужна (как я понял) для того чтобы не было багов в коде!

    • @egoroffchannel
      @egoroffchannel  4 ปีที่แล้ว +2

      у тебя есть свойство my_balence(в нем уже есть геттор)
      далее мы my_balence расширяем сеттером и сохраняем под именем set_balance
      Сам my_balence остался геттером
      Новое имя set_balance получило и геттер и сеттер

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

    Было бы значительно понятнее, если бы я мог увидеть, как выгладит код декоратора, т.е в тот момент, когда мы декорируем баланс my_balance=property(my_balance) как это выглядит внутри

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

    Странно что через класс можно получить доступ к "private методу" даже если передавая свой же класс как аргумент(self), ну а на property вызов через класс получается в пустую

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

    Вы говорите что геттеры и сеттеры должны называться одинаково на 9:59, также есть подсказка что делеттер тоже называется my_balance. В итоге все функции должны называться одинаково?

  • @ГригорийСитёв
    @ГригорийСитёв 4 ปีที่แล้ว +5

    На этом уроке захотелось бросить освоение ООП в Python :(

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

    Одно не понятно. Зачем нам с помощью геттеров, сеттеров, делиттеров получать доступ к защищенным и приватным аттрибутам, если мы изначально указываем, что данные аттрибуты нужны нам только для использования в пределах нашего класса или класса наследника, тем самым подразумевая, что к ним не нужно обращаться из публичного интерфейса?

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

      вово. зачем открывать доступ к тому, к чему ты не даешь доступ

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

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

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

    Тема хорошая, но не хватает заданий по отдельным темам на степике. Чувствую, что еще долго буду использовать этот канал, как справочное пособие по python)

  • @ГерманРыков-ъ6в
    @ГерманРыков-ъ6в 4 ปีที่แล้ว

    Здравствуйте. А зачем на 3.30 декораторы, просто ранее Вы говорили, что декораторы навешивают для расширения способностей функции (свойства)? Получается у декоратора есть иные цели?

  • @Furlic-LastBraincell
    @Furlic-LastBraincell 2 ปีที่แล้ว +1

    Прошу заметить что мы создаем свойства под соответсвующими функциями.Также рекоммендую скопировать код в PyCharm, чтобы проще было разглядеть его.
    class Circles:
    def __init__(self, radius):
    self.__radius = radius
    def radius(self):
    return self.__radius
    radius = property(radius)
    my_radius = radius # Сохраняем свойство в нвую переменную,чтобы избежать конфликта
    def radius(self, value):
    self.__radius = value
    radius = my_radius.setter(radius)
    my_radius = radius # Мы обновляем my_radius, чтобы в нем сохранился сеттер
    def radius(self):
    del self.__radius
    radius = my_radius.deleter(radius)
    Я взял класс попроще, чтобы не нагружать

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

    А если не пользоваться "синтаксическим сахаром" и декорировать через строчку, дабы лучше понять процесс декорирования, возникает вопрос.
    До делитора полет нормальный, my_balance расширяем сеттером, а вот если далее тоже самое делать для делитора, и использовать ту же переменную my_property_balance, то перестает работать сеттер. То есть мы перезатираем свойство my_balance с сеттером?
    Если создать ещё одну переменную my_property_balance2, и как основу для делитора использовать её, то все работает. Но создавать каждый раз новые переменные..может я не туда клоню?
    class BankAccount:
    def __init__(self, name, balance):
    self.__name = name
    self.__balance = balance
    def my_balance(self):
    return self.__balance
    my_balance = property(my_balance)
    #Первая переменная
    my_property_balance1 = my_balance
    def my_balance(self, value):
    self.__balance = value
    my_balance = my_property_balance1.setter(my_balance)
    #Вторая переменная
    my_property_balance2 = my_balance
    def my_balance(self):
    del self.__balance
    my_balance = my_property_balance2.deleter(my_balance)

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

    А почему недоступен предыдущий урок 10?

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

    Очень интересно, но не понятно зачем оно надо?.. Это если надо написать 0, то лучше пишите 1-1?

    • @atriusvinius319
      @atriusvinius319 8 หลายเดือนก่อน

      Это надо что бы наполнить контент. А в жизни такой шляпой почти никто не занимается.

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

    ааааааааааааа мой мозг расплавился!

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

    Аналогичный моему вопрос уже задавали, но ответа не было. Почему обращаться по имени метода-это плохо, а обращаться по точно такому же имени, но у свойства это хорошо. Только ради того чтобы скобки в конце названия не ставить?

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

      где я говорил, что обращаться по имени метода плохо?

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

      @@egoroffchannel конечно вы так не говорили, это я неправильно сформулировал свою мысль. я очень ценю ваше видео и то как вы подаете материал. Спасибо вам.

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

    месяц назад освоил замыкания-декораторы-проперти, к этому моменту уже всё забыл без практики. блин

  • @alexanderselesnev3739
    @alexanderselesnev3739 4 ปีที่แล้ว +2

    x.getter(90) ? Может быть имелось ввиду x.setter(90) ?

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

    Здравствуйте! Хотел изучить пайтон, подскажите, с чего начать и сколько стоят ваши уроки, если будете преподавать

  • @Sergey-cz7ym
    @Sergey-cz7ym 2 ปีที่แล้ว +3

    ни хрена не понятно, но очень интересно :)

  • @МихайлоМ-п5ц
    @МихайлоМ-п5ц 4 ปีที่แล้ว

    Спасибо!

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

    А где можно посмотреть исходный код класса Property?

    • @egoroffchannel
      @egoroffchannel  3 ปีที่แล้ว +1

      stackoverflow.com/questions/17330160/how-does-the-property-decorator-work-in-python

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

    Объясните пожалуйста, зачем вообще нужны свойства?

  • @alexander2.097
    @alexander2.097 4 ปีที่แล้ว

    Скажите пожалуйста, @property можно декорировать только getter. да??

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

    Спасибо

  • @ГерманРыков-ъ6в
    @ГерманРыков-ъ6в 4 ปีที่แล้ว

    Здравствуйте. Прошу прошения за частые вопросы, но не могу понять почему на 1.49 нет "перезатирания" а в переменную new_balance все влезает?

    • @Sergey-cz7ym
      @Sergey-cz7ym 2 ปีที่แล้ว

      Наверно потому что переменная стала свойством, и с ним перезатирание работает типа как в списке метод append, не затирает а добавляет. ИМХО

  • @ГерманРыков-ъ6в
    @ГерманРыков-ъ6в 4 ปีที่แล้ว

    Здравствуйте. На 1.30 мы объявляем объект(думаю это переменная) new_balance и определяем этому объекту property, но вот дальше непонятно. Property это служебное слово или это тоже переменная, если последняя то почему pycharm не ругается (мы ведь её не определили

    • @ГерманРыков-ъ6в
      @ГерманРыков-ъ6в 4 ปีที่แล้ว

      Ааааа property это функция.

    • @David-me5dz
      @David-me5dz 2 ปีที่แล้ว

      @@ГерманРыков-ъ6в тоже не могу разобраться. Смотрел эту тему в другом источнике. В итоге property() называют и классом и свойством (хотя не понятно значение термина свойство) и методом, а на самом деле получается что это просто функция для декорирования?

  • @ЕрвандАгаджанян-в3к
    @ЕрвандАгаджанян-в3к 4 ปีที่แล้ว +3

    Бесспорно самый сложный видос на всем этом канале. Нужно много раз с разницей в несколько дней пересмотреть, чтобы понять смысл. Я как первый раз как посмотрел - вообще шок был, несмотря на то, что до этого весь курс по основам питона и все ООП пересмотрел по много-много раз. В любом случае, лучшего объяснения, чем это, на ютубе нет.

    • @egoroffchannel
      @egoroffchannel  4 ปีที่แล้ว +3

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

    • @dmitrysakharnikov1358
      @dmitrysakharnikov1358 4 ปีที่แล้ว +7

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

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

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

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

      я думаю какие задачки можно придумать и на степике их разместить

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

    Шаг 1 - my_balance = property() здесь мы в переменную присвоили экземпляр класса Property
    Шаг 2 - my_balance = my_balance.getter(get_balance) здесь строка my_balance.getter(get_balance) по сути равна строке
    property.getter(get_balance) и она присвоилась в переменную my_balance и переписала ее значение (правильно понял?)
    В след строчке mybalance = my_balance.setter(set_balance) равно такой строчке?
    mybalance = my_balance.getter(get_balance).setter(set_balance) т.к. вместо mybalance уже подставляет значение, которое было присвоено переменной mybalance на шаге 2. Я все правильно понял?
    Если да и это краткая запись, то что за странный синтаксис, с присвоением переменной методов класса и как python понимает что при обращении к элементу a.my_balance необходимо именно вызвать именно метод getter?
    Если моя логика верна то в атрибут my_balance класса BankAccount в итоге будет лежать следующее:
    mybalance = my_balance.getter(get_balance).setter(set_balance).deleter(delete_balance)
    И как при обращении python понимает, что от него надо? Есть какая-то аналогия?
    Например со строками можно взывать методы следующим образом
    a = 'Hello my name is Python'
    a.replace('H', 'h').replace('P', 'p').replace('is', 'isn't')

  • @НиколайМануилов-и1д
    @НиколайМануилов-и1д 3 ปีที่แล้ว

    Что такое Свойства в данном контексте? Класс, атрибут, экземпляр класса, атрибут экземпляра - это всё было, а вот про свойства не помню)

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

    А зачем нужно делать из функция свойства. Я просто не особо понимаю.

  • @ГерманРыков-ъ6в
    @ГерманРыков-ъ6в 4 ปีที่แล้ว

    Плохо что нет ссылки на видео где упоминалось про декоратор.

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

      Давай вставлю, можешь отрезок времени прислать?

    • @ГерманРыков-ъ6в
      @ГерманРыков-ъ6в 4 ปีที่แล้ว

      @@egoroffchannel Полагаю, что ссылка на "python для начинающих" видео замыкание и две части декораторов.

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

    Спасибо. Всё супер, а как вызвать делитер?

    • @egoroffchannel
      @egoroffchannel  4 ปีที่แล้ว +2

      Функция del. Я показывал в предыдущем видео точно

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

    от названия декоратора что либо зависит? или можно его было назвать как угодно?

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

      Как я понял названия всех методов должны совпадать. А здесь еще и приводится обоснование почему так должно быть (с этой частью сам не очень разобрался).

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

    Не пытайтесь понять это видео. Механика работы property не для новичков. Достаточно знать, что есть @property и они работают.

    • @zein140
      @zein140 3 ปีที่แล้ว +1

      спасибо за совет

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

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

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

    А почему ты написал "@my_balance.setter", но не написал "@my_balance.getter".
    Почему его не надо писать, а сеттер надо? Не совсем понял этот момент просто.

    • @egoroffchannel
      @egoroffchannel  4 ปีที่แล้ว +2

      property принимает обязательный параметр, он так раз и getter

  • @tereh517
    @tereh517 2 หลายเดือนก่อน

    Прежде чем смотреть это видео нужно посмотреть видео о декораторах. Ок. Иду на видео о декораторах. Там он говорит что прежде чем смотреть видео о декораторах, нужно посмотреть видео о замыкании. Ок. Включаю видео о замыкании. А там мне говорят вспоминай предыдущий урок. Кошмар.

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

    Лично я запутался. Каша стала гуще!!

  • @РустамРаджабов-ц3м
    @РустамРаджабов-ц3м 10 หลายเดือนก่อน

    где можно всю инфу по этой теме???? нихера не понятно

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

    Когда продолжение 2048?Осталось немного)

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

      на следующей недели

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

    чтото ты тут намудрил))) лучше переснятьб оно еще и платное

  • @ПавлоКабай
    @ПавлоКабай 4 ปีที่แล้ว

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

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

    раза 3 посмотрел и про декораторы и про замыкания.
    все равно ничего не понял. главный вопрос ЗАЧЕМ?
    зачем создавать __атрибут, потом на него писать методы и эти методы сувать под декоратор чтобы потом получать значение атрибута как свойство
    ну и напиши атрбиту без __
    зачем закрывать доступ чтобы потом его все равно дать?
    .
    Попробуй приводить примеры жизненные, ибо в конце когда ты всё повторил у меня ваще крыша поехала как у Гомера в голове обезьянка с тарелками.

  • @РустамРаджабов-ц3м
    @РустамРаджабов-ц3м 10 หลายเดือนก่อน

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

  • @ИванКомаревич-е1т
    @ИванКомаревич-е1т 22 วันที่ผ่านมา

    Видео не очень(

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

    Крайне неудачное объяснение!

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

    @my_balance.deleter - как вызывать эту функцию в консоли?

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

      a = BancAccount("www", 333)
      a.my_balance # сработает setter, выведет 333
      a.my_balance = 444 # сработает getter, значение станет = 444
      del a # deleter нужно использовать таким образом или как то иначе?

  • @rebelrosso
    @rebelrosso 6 หลายเดือนก่อน

    Очень интересно, но ничего не понятно..............

  • @David-me5dz
    @David-me5dz 2 ปีที่แล้ว +1

    Я запутался.
    Что такое property?
    В предыдущем видео, упоминалось что это класс, но имена классов должны начинаться с большой буквы, разве нет?
    Здесь вначале его начали называть свойством. Но я ни разу не сталкивался с таким термином на этом канале. Что такое свойство?
    Потом оказалось что это вообще декоратор, а декоратор по сути это просто функция.
    Путаница в понятиях сильно мешает понять материал. На некоторых обучающих площадках (не здесь) атрибуты класса называют и атрибутами и свойствами и данными и переменными и каждый называет как хочет. В своё время из-за этого очень тяжело было понять ООП, так и бросил не разобравшись.

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

      Поддерживаю как сейчас, поняли? Мне очень важно, буду благодарен, если объясните

  • @Dm-if3vl
    @Dm-if3vl 4 ปีที่แล้ว

    Спасибо