Pipelines в Laravel. Для тех кто не знал.

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

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

  • @ДарьяШу-п7щ
    @ДарьяШу-п7щ 2 ปีที่แล้ว +7

    Вижу cutcode, ставлю лайк не глядя 👍
    Спасибо

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

      Не надо не глядя 👆🏻

  • @RuslanMavlyanov
    @RuslanMavlyanov 5 หลายเดือนก่อน +1

    Да, наглядность получившегося кода - хуже, чем foreach, согласен. Но я просто обожаю такие красивые лаконичные решения :)
    Боюсь что не смогу удержаться от использования Пайплайна.
    Спасибо брат ты красавчик! Лучи добра тебе

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

    Супер! Мне очень понравилось то видео про рефакторинг фильтров, а про пайпы я и не знал, спасибо!

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

    Спасибо за полезный урок) Радует что у вас растет уровня и качество контента.

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

      Стараемся по полной)

  • @MrFlip-fu2py
    @MrFlip-fu2py 2 ปีที่แล้ว +2

    Спасибо, познавательно :) 👍

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

    Пока не понял его пользы, но за труд спасибо!

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

      Еще много раз к ним вернемся

    • @АндрейОринин-б2э
      @АндрейОринин-б2э 2 ปีที่แล้ว +5

      Автор верно сказал что, в данном случае профита нет.
      В одном из проектов мне довелось очень удачно ввести пайплайн для сложной проверки оформления заказа. Так как в проекте используется rest api, данные с фронта необходимо перепроверить. Первым этапом проверяем товары из корзины: цены, кол-во. Затем проверяем акционные товары, так же на цены, на то, могут ли товары из разных акций совмещаться между собой. Затем мы проверяем ранее проверенные товары на зоны доставки, входят они или нет, автоматически определяем филиал и стоимость доставки. Далее подарочные товары. И в целом так далее.
      Вот мы и приходим к пайпу. Берем заказ, поочередно проверяем его, каждый класс - ответственен за свою логику. И самое важное, что бы мне в будущем добавить какую либо новую проверку, достаточно создать класс и передать его в пайплайн

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

      @@АндрейОринин-б2э да с процессами обработки заказа отличный пример, ну и мидлвары также работают через пайплайн

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

      Удобно для вызова последовательной цепочки действий. Например, загрузка, обработка файла и т.д.

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

    Спасибо что уделили внимание моему комментарию :) Очень приятно :) Видео познавательное и интересное, но все равно мне показалось мало информации о пайпах: где и почему используются в ларе. Если кому-то интересно почитать доступную статью с примерами на данную тему, почитайте у demiart статью, там три части. Благодаря ей я узнал о что такое пайпы и с чем их едят)
    Ну и комментарий о том, что другой, не очень опытный, программист не поймёт что это и как это работает - притянуто за уши. Эта тему очень довольно просто доступно объяснить, а уж загуглить тем более)

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

      у каждого своё мнение

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

      @@CutCodeRu никто этого не отрицал. Для этого и созданы комментарии )

    • @RuslanMavlyanov
      @RuslanMavlyanov 5 หลายเดือนก่อน

      Не поймёт! Я джунам объяснял - и было им тяжко.
      Это уже скорее мидловская тема

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

    It's like a decorator and the same style is used in Laravel middleware. And of course, your last comment was on point, it's not that readable. But still thank you, cause it was a good example.

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

    как всегда лайк 🙂 Автору большое спасибо за ваши труды, очень интересно смотреть 🙂😃

  • @МихаилКрамер-н7ш
    @МихаилКрамер-н7ш 2 ปีที่แล้ว +3

    Тут самое же главное, что как в middleware (которые под капотом через пайпы и реализованы), мы можем решать, вызвать нам next, не вызывать, когда вызывать, что делать с результатом и т.п.

  • @АлександрТумандеев-ц3у
    @АлександрТумандеев-ц3у 9 หลายเดือนก่อน +1

    Вау) это очень круто)

    • @CutCodeRu
      @CutCodeRu  9 หลายเดือนก่อน

      У нас на канале много всего интересного!

  • @RuslanMavlyanov
    @RuslanMavlyanov 5 หลายเดือนก่อน +2

    Дык это же паттерн Chain of Responsibility (Цепочка обязанностей) походу! На рефакторинг.гуру есть пример.
    А так то спасибо за краткое хорошее овервью

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

    спасибо за видос )

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

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

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

      тоже думал что к этому сведет Данил в итоге..

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

      Не было такой цели)

    • @0kkama
      @0kkama 5 หลายเดือนก่อน

      @@CutCodeRu а зря. Если ознакомится с этим паттенрном, то и пайплайны станут понятнее и с мидлварами тоже проще будет.

  • @0kkama
    @0kkama 5 หลายเดือนก่อน

    можно фильтрацию просто через цепочку обязанностей сделать, а можно еще через декорацию. У каждого варианта свои +/-

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

    Про статистику: И 50% кто подписан не смотрят) Спасибо за труды!

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

      Вот хулиганы)

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

    Классное видео. А в handle при применении apply не надо получать ответ чтобы дальше его пробросить?

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

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

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

    Добрый день. Подскажите, пожалуйста, будет ли туториал по написанию полноценного функционала данной (или похожей) фильтрации у Вас на канале? Спасибо.

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

      Добрый, будет огромный курс, где мы рассмотрим фильтры и многое другое

  • @ДенисКуликов-м3о
    @ДенисКуликов-м3о 2 ปีที่แล้ว +3

    Самой простой пример pipline это Gulp

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

    Интересно, а pipline которые сам фреймворк использует это те-же piplines что в видео рассматривают?

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

    Пусть просвящаются)

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

    Не понял, изменили нижнюю границу диапазона стоимости с 0 до 400, и не нашлось ни одного результата, но до применения фильтра полным полно терапевтов со стоимостью выше 400.
    Объясните, пожалуйста.

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

      Там не только фильтр с ценой применяется

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

      @@CutCodeRu стоят какие-то дефолтные галочки/ползунки, которые не применяются при загрузке страницы?

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

    Стек не офигеет от таких пайплайнов?

    • @МихаилКрамер-н7ш
      @МихаилКрамер-н7ш 2 ปีที่แล้ว

      На какой-то цифре наверняка. Но она, думаю, достаточно большая. Middleware под капотом как раз через пайпы работают.

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

      @@МихаилКрамер-н7ш, мидлваров там не так много, все-таки. А здесь есть ощущение, что можно доиграться.

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

      Мидлваров может быть сколько угодно, их и по умолчанию больше чем фильтров а фильтры сами дополняют query builder условиями, строят sql запрос и в процессе никакой нагрузки нет
      Не верьте ощущением, доверяй фактам

    • @МихаилКрамер-н7ш
      @МихаилКрамер-н7ш 2 ปีที่แล้ว

      @@CutCodeRu Ну если бы фильтров реально было много, всё равно бы стек перегрузился... Можно, в принципе, эксперимент поставить, но тут наполнение стека - как при достаточно глубокой рекурсии, можно даже сказать, что в каком-то смысле она и есть. Этими $next мы всё глубже и глубже уходим. Пых просто способен достаточно глубоко уходить. Но учитывать это надо

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

      @@МихаилКрамер-н7ш учитывать надо все

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

    Пример о трубах на дороге вообще плохой. уж лучше конвейер на заводе привести.

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

      Ну на мой взгляд отличный пример, поэтому его и использовал)

  • @MrFlip-fu2py
    @MrFlip-fu2py 2 ปีที่แล้ว +5

    Спасибо, познавательно :) 👍