или поменять их местами и это вызовет кучу проблем?
Ты говоришь о беспорядочной архитектуре и мутировании объекта req
То что вы называете Middleware, на самом деле Chain of Responsibility. Только малая часть так называемых Middleware являются ими с строгой точки зрения
Нет
почему нет? насколько помню, у гоф цепочка описана так, что тот, кто готов обработать сигнал, его обрабатывает, и не передаёт дальше с этой точки зрения действительно не все миддлвари реализация этого паттерна
В цепочке может обрабатывать каждый узел, также каждый узел может разорвать цепочку на свое усмотрение.
нет
Ок
по крайней мере по гоф там в назначении яно указано: Позволяет избежать привязки отправителя запроса к его получателю, давая шанс обработать запрос нескольким объектам. Связывает объекты-получатели в цепочку и передает запрос вдоль этой цепочки, пока его не обработают. и в примерах, и в объяснении упор на то, что неизвестно, кто именно может обработать сигнал, поэтому мы и отправляем его по цепочке а в цепочке уже кто-то сам выберет, что это сигнал именно для него миддлвари более верно можно описать паттерном "строитель", но почему-то все прицепились к цепочке обязанностей
Какой то бред. Причём строитель? Что в определении цепочки не стыкуется с мидварями? Где написано, что может обработать только 1 звено?
Строитель порождающий патерн. Не туда
мы порождаем (строим) респонс
Суши вёсла. Тут есть определенный контингент, которому нужен спор ради спора
ты поэтому ответил "нет" фениксу? 😒 я то думал будет обсуждение паттернов
предлагаешь мне цитировать гоф? вот какое там определение участников: ConcreteHandler - конкретный обработчик: - обрабатывает запрос, за который отвечает; - имеет доступ к своему преемнику; - если ConcreteHandler способен обработать запрос, то так и делает, если не может, то направляет его - его своему преемнику; явно же указано, что есть ветка - или обрабатываешь, или отправляешь дальше да и по всем примерам и описаниям именно так
Ну обрабатывает и передает дальше. Не может обработать - просто передает дальше. Что не так?
Строитель же просто делает конструктор объекта гибким. А мидлвара может ничего не создавать, а просто обрабатывать
О, привет, я думаю, ты не пытался вдуматься в это утверждение и чисто по фану решил поспорить
О, привет, нет
Ну вот и поговорили
Обсуждают сегодня