ООП на пальцах. Объектно-ориентированное программирование | 2023

Поделиться
HTML-код
  • Опубликовано: 9 май 2024
  • Парадигма ООП одна из самых распространенных в мире. Начинающие программисты испытывают трудности с пониманием этого подхода, но умение писать в объектно-ориентированном стиле встречается в каждой второй вакансии.
    ⭐️ Бесплатная карьерная консультация calendly.com/tomfordrumm/free-20
    Записывайся и мы обсудим, куда тебе двигаться дальше, разберем, почему не получается найти работу и как улучшить твое резюме, чтобы тебя приглашали на собеседования!
    💡Мысли, опыт и уникальный контент в моем Телеграм канале - t.me/svyatamesto
    💡Обсудить новые технологии, мемы и новости в сфере IT- t.me/+YKgMaur5pIZjZjBi
    💡Найти идею для пет-проекта в нашем боте - t.me/hub_404_bot
    💡Комьюнити нетоксичных айтишников - / discord
    💡Тик-ток - / svyatamesto
    💡Нельзяграм - / svyatamesto
    ⚡️Поддержать меня:
    Boosty - boosty.to/svyat404
    BTC - bc1q4tk6mjxptfdnvcmjahee7q29rh2v5p3uk996qc
    ETH - 0x2659229d760383AF3C9de3a90457Cd1B190AddFD
    TON - EQCBtx7lfTymSTlPfuWlZpikGDiJm1fq-7-kTEqYFgMm8WQH
    00:00 - Парадигма ООП
    00:10 - Что было до? Процедурный стиль
    00:38 - Минусы процедурного стиля
    01:01 - Основная идея ООП
    01:32 - Класс
    01:45 - Принципы ООП
    02:08 - Инкапсуляция
    02:49 - Абстракция
    03:57 - Наследование
    04:32 - Полиморфизм
    05:47 - Что дают принципы ООП

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

  • @svyat404
    @svyat404  5 месяцев назад

    🚫Уперся в стеклянный потолок и остановился рост?
    ⌛Пытаешься устроиться в IT, но все никак не получается?
    🚀Приходи на консультацию (это бесплатно), и я покажу, как пробить этот барьер!
    calendly.com/tomfordrumm/free-20

  • @piypiy_n
    @piypiy_n 5 месяцев назад +3

    Господи ну наконец-то я нашла видео,где понятно объясняют каждый из принципов!!!!!

  • @konstantynnazarenko101
    @konstantynnazarenko101 2 месяца назад +2

    Шикарное объяснение. И последний блок, где кратко о каждом принципе - лучшее объяснение, которое я читал или слушал. Спасибо, дружище!

  • @JeremyRough
    @JeremyRough 8 месяцев назад +3

    Как же кайфово подан материал!

  • @Zamunda991
    @Zamunda991 Месяц назад

    ОФигенно лаконично и ,при этом, недвусмысленно понятно!! Спасибо большое С меня 👍

  • @MaryJaneWat
    @MaryJaneWat Год назад

    Долгожданное видео 🎉 отличное объяснение, спасибо.
    Видела разные определения абстракции до этого, кто то даже менял местами инкапсуляцию и абстракцию )

  • @sonicartem1076
    @sonicartem1076 Год назад +2

    На данный момент это лучшее объяснение ООП увиденное мной.

  • @katrin_stein87
    @katrin_stein87 Год назад +1

    Отличное объяснение! Коротко, но ëмко.

  • @name_surname-eo6dz
    @name_surname-eo6dz Год назад +2

    Хорошо объясняешь.Без воды.

    • @MaryJaneWat
      @MaryJaneWat Год назад +2

      Согласна 👍 у него целая серия коротких и понятных роликов 😏 я например с апи разобралась наконец то благодаря этому каналу )

  • @vikag7356
    @vikag7356 Месяц назад

    Спасибо

  • @-hellsbook9599
    @-hellsbook9599 4 месяца назад +1

    Вопрос насчёт полиморфизма. Я только постигаю основы ООП, поэтому извиняюсь заранее, если вопрос окажется глупым.
    В примере 4:50 показывается проверка типа данных внутри метода. Это рациональнее использовать, чем перегрузку методов?

    • @svyat404
      @svyat404  4 месяца назад +2

      Все зависит от конкретного случая. В примере который я показывал мы использовали третий класс Helper внутри которого мы и делали эту проверку. Чтобы применить сюда перегрузку методов мы должны были сделать новый класс HelperExtended который расширил бы наш Helper и перегрузил бы тот метод. Но в этом случае нам нужно было бы явно следить, чтобы мы использовали корректный Helper класс в теле программы.
      Так что и та и та реализации имеют место быть. А вот рациональность нужно оценивать исходя их конкретных задач и исходных данных :)

  • @AlmirSaitov-sl4gg
    @AlmirSaitov-sl4gg Год назад +4

    А минусы выйдут через месяц))

  • @s.Huguenot
    @s.Huguenot 29 дней назад

    Привет, что за растение на заднем плане ?

    • @svyat404
      @svyat404  27 дней назад

      Привет! Если честно хз 😅 что-то искусственное 😅

  • @Roger-qj4wu
    @Roger-qj4wu 4 месяца назад

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

  • @kostyagusto5109
    @kostyagusto5109 3 месяца назад +1

    так и не понял разницу между абстракцией и инкапсуляцией

    • @svyat404
      @svyat404  3 месяца назад +2

      Инкапсуляция это про то что методы и атрибуты относящиеся к одной сущности должны быть внутри одного класса. In capsule - внутри капсулы. То есть это в целом про устройство класса и ООП.
      Абстрагирование это про то, как с объектом взаимодействуют другие части программы. То есть мы всю «подкапотную» логику прячем внутри класса под ширмой приватности, а оставшиеся методы и атрибуты открываем для доступа снаружи.
      Надеюсь теперь стало понятнее 🤔

    • @kostyagusto5109
      @kostyagusto5109 3 месяца назад +1

      @@svyat404 то есть эти два механизма используют сокрытие, но для разных семантических целей?

    • @svyat404
      @svyat404  3 месяца назад +3

      ​ @kostyagusto5109 инкапсуляция не про сокрытие. Про сокрытие абстракция.
      Они действительно очень похожи потому что вытекают один из другого.
      То есть инкапсуляция говорит нам о том, что методы и атрибуты с которыми работают эти методы должны быть в одном классе.
      В случае с инкапсуляцией иногда можно встретить упоминание сокрытия, но тут идет речь о том, что атрибуты объекта нельзя править напрямую. То есть нельзя сделать user->age = 18. Это должен делать метод внутри класса. user->setAge(18);

    • @kostyagusto5109
      @kostyagusto5109 2 месяца назад +1

      спасибо большое,@@svyat404

    • @MaryJaneWat
      @MaryJaneWat 2 месяца назад

      @@svyat404очень понятно, я теперь поняла! Спасибо!
      Так а принципа 3 или 4 ? 😀

  • @user-if1dj7fy2y
    @user-if1dj7fy2y Месяц назад

    📌 И не врите самому себе про Рабочий День
    👀 ruclips.net/video/926m0lGEHw4/видео.htmlsi=PHejZZ1pJ436F9Sr

  • @fpedotovvalentin
    @fpedotovvalentin Месяц назад

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

  • @afin4684
    @afin4684 Год назад +1

    Что за яп?

    • @svyat404
      @svyat404  Год назад +1

      В основной части PHP.
      В самом начале там python и pascal :)

  • @Vghhjhh-ck2df
    @Vghhjhh-ck2df Месяц назад

    Гг

  • @dmitriypermyakov5402
    @dmitriypermyakov5402 Год назад +5

    Нахер, даже досматривать не стал.

  • @user-lq4pv8lj5q
    @user-lq4pv8lj5q 10 месяцев назад

    очень абстрактное объяснение без примеров.

    • @svyat404
      @svyat404  10 месяцев назад +1

      А ты точно видос смотрел? :)