169 похожих чатов

Если экшены совсем тонкие, кто мешает бить их на группы

и описывать каждую группу в общем файле группы? Будет аналог "контроллера".

Или вообще в списке роутов через простые анонимные функции. Тогда и сотни классов создавать не придётся.

Ну и ещё, когда приложение разрастается до сотен и тысяч классов, хорошо бы начать бить его на модули по принципам совместно используемого кода. Тогда будет не пара сотен экшенов, а пара десятков в пределах каждого модуля.

14 ответов

16 просмотров

> Или вообще в списке роутов через простые анонимные функции. Тогда и сотни классов создавать не придётся. Гениально.

А чем это особо отличается от текущих подходов, кроме того, что не будет классов?

Попробуй закэшировать такой файл.

Если есть возможность сериализовать анонимку, то и закешировать возможно. Насколько я сейчас вижу, возможность сериализации анонимок есть

Кроме этого ещё FFI с доступом к ZVAL может помочь

И это все для того, чтобы не писать хэндлеры в виде классов. Нормально, делай так.

У каждого подхода свои плюсы и минусы. Если кому-то похрен на трудности сериализации анонимок и плюсы перевешивают, то почему бы и нет. А вот уверенно заявлять о чей-то "гениальности" я бы не советовал.

Лично я не вижу ни одного преимущество в использовании анонимок, кроме личного предпочтения и при локальной разработке "потестить" теории. Кроме проблем кэширования, есть проблема переиспользования.

Нахер их кешировать?)

> Лично я не вижу ни одного преимущество в использовании анонимок Это не значит, что другие не видят. Лично я сходу могу назвать как минимум возможность выкинуть аннотации и всё с ними связанное. Описание роутов всё также будет возле екшенов. > часто многие наследуются от базового контроллера фреймворка Часто? Да. Многие? Да. Правильно ли это? Сомневаюсь. В истории чата можно многое найти. > потому что тот предоставляет полезные сервисы по умолчанию (симфони) И что мешает их через DI втащить в анонимку и без проблем использовать?

А, ясна

> И что мешает их через DI втащить в анонимку и без проблем использовать? Нежелание дублировать код. > Часто? Да. Многие? Да. Правильно ли это? Сомневаюсь. В истории чата можно многое найти. Это же контроллеры, камон

> Нежелание дублировать код Мммм... Сомнительно. Но ок. Что там дублировать? Аргументы методов? Лишний раз завязываться на методах фреймворка не отпугивает? > Это же контроллеры, камон Если честно, не понял как это высказывание должно меня переубедить

> Если честно, не понял как это высказывание должно меня переубедить Я о том, что http слой редко меняется (на моей памяти никогда, но у меня, может, память короткая), поэтому проблемы наследования в контроллерах я не наблюдаю. Контроллеры просто вызывают сервис/юзкейс и отдают респонс. Ударяться в религию в этом случае не вижу смысла. > Мммм... Сомнительно. Но ок. Что там дублировать? Аргументы методов? Лишний раз завязываться на методах фреймворка не отпугивает? Опять же, сам фреймворк меняют редко, так что пофиг.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта