Когда DRY не работает! Копируй по SOLID (Показываю на примере)

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

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

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

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

  • @beksultanomirzak9803
    @beksultanomirzak9803 9 หลายเดือนก่อน +1

    я уже посмотрел твое несколько видео блин прям круто объясняешь и нужных тем, спасибо тебе

  • @ВладимирВолощик-ю3ы
    @ВладимирВолощик-ю3ы ปีที่แล้ว +1

    Спасибо! Такого контента мне не хватала. Я в экстазе от видео. Готов донатить.

  • @роматарасов-о8л
    @роматарасов-о8л ปีที่แล้ว +3

    очень крутая важная жизненная тема

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

    Удачным примером были бы формы создания и редактирования для одной сущности, отображение данных даже в самом запущеном случае обычно можно распутать, а вот там где есть сохранение/отправка…

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

      Если поля полностью одинаковые, то саму форму можно делать как один универсальный компонент, который принимает на вход InitialValues сверху и эмитит значения при отправке формы
      Компонент-обертка 1: создание сущности, не передает ничего
      Компонент-обертка 2: редактирование сущности, передает текущие значения
      Если же поля отличаются, надо смотреть конкретику

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

    Спасибо, отличное видео

  • @АртемЛитвиненко-д8ц
    @АртемЛитвиненко-д8ц ปีที่แล้ว +2

    Компоненты высокого уровня абстракций должны копироваться, но переиспользовать компоненты более низких уровней абстракций. Если компонента высокого уровня абстракций полагается на другую того же уровня (что в некоторых случаях допустимо), то движемся по дереву компонент вниз пока не найдем походящую для переиспользования. В данном примере переиспользуется UserCard, но мне кажеться мы могли бы уйти на уровень выше и взять еще и title объединив в UsersWidget

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

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

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

      Лучше было бы title и loader вынесли в компоненты еще

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

    Спасибо, очень полезно!

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

    Привет, Евгений. Видос супер.У меня появился вопрос). Допустим есть модальное окно, которое отрисовывает список юзеров и по кнопке 'Применить' отправляет POST запрос на бэк. Я хочу переиспользовать это модальное окно в разных местах. Но в одном месте используется одно название URL адреса, а в другом месте другое название URL адреса (body запроса одинаковое). Логика внутри модального окна одинаковая, но передается props url адреса, чтобы это модальное окно переиспользовать. Вопрос. Может этот компонент надо продублировать для тех частей, где используется разный url адрес POST запроса?

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

      Скорее всего если url разные то и body рано или поздно поменяются. Можно через пропсы передать функцию запроса или просто onSave. Отдельный урл, это передача кусочка абстракции, это нарушение инкапсуляции
      Но вообще модалки как раз неплохо переиспользуются, так как они по смыслу являются одним и тем же часто, просто с разными тригерами

  • @Вбелом-й3з
    @Вбелом-й3з 5 หลายเดือนก่อน

    боль.