SOLID принципы / # 4 LSP - Liskov Substituion Principle / Часть 1 / Принцип подстановки Лисков

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

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

  • @SAMURAI_l58
    @SAMURAI_l58 2 года назад +4

    Спосибо наконец-то разобрался в правиле solid

  • @klochamp1735
    @klochamp1735 2 года назад +3

    Просмотрел кучу примеров и не нашел внятного объяснения. Дают пример с квадратом и прямоугольником, дальше говорят, что принцип LSP нарушен и никакого решения не дают. После просмотра видео все стало понятно. Илье спасибо за решение и внятное объяснение!

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

    Чё так мало просмотров, лайков и комментов?!😮

  • @TheDzzirtuoz
    @TheDzzirtuoz 2 года назад +1

    В предыдущем видео по OCP было #3 и в этом видео по LSP тоже #3

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

    А вообще квадрат это частный случай ромба=)

  • @Makaroshkaman
    @Makaroshkaman 2 года назад

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

    • @ЕвгенийБабиков-в4я
      @ЕвгенийБабиков-в4я 2 года назад

      1) Просто сторона - это не есть высота, и сторона - не есть ширина. Все равно будет отказ от наследства квадрата - запах, потому что у прямоугольника уже ширина и высота. Просто так логичнее называть свойства, чем сторона и сторона2 (новое св-во которое добавили в прямоугольник).
      2) В примере целью задачи являлось определение площади фигуры, а если мы еще захотим расшить код и другие фигуры добавить. Например круг, эллипс и т.п. У других фигур другие свойства будут: радиусы и др. Их от квадрата тоже смысла нет наследовать, поэтому такой код будет не расширяем, неподвижен. Это тоже запах.