Экшена в контроллере

#1 6 марта 2021 в 01:25
Вопрос достаточно глупый, но мне хотелось бы услышать ваше мнения.
Мы можем экшены создавать как в frontend так и в отдельных файлах.
а вот и сам вопрос а где лучше, даже не то чтоб где лучше, а как определится где какой создавать?
#2 6 марта 2021 в 08:36
Я во frontend создаю когда экшн 1. Ну или пара.
Если больше — то в отдельной папке. Подключение файла экшна — это милимилисекунды, которые не стоит оптимизировать.

Документация docs.instantcms.ru/dev/controllers/actions
#3 6 марта 2021 в 09:23
Tolya, ваш вопрос холиварный. Best practices рекомендуют делать тонкие контроллеры, а так называемую бизнес-логику выносить в отдельные классы. И в этой концепции речь даже не идет о том, чтобы метод класса вынести в отдельный файл.
Думаю, что экшены в отдельных файлах — это отражение предпочтений разработчика на момент написания движка. Не факт, что сейчас он думает так же.
Каков глубинный смысл вынесения каждого метода в отдельный файл? Сделать эти файлы более читаемыми? Но тогда, лазая по десятку файлов, сложно понять общую картину, что же делает этот контроллер. Что-то никого не смущает величиной, например, system/core/model.php, а почему? Предположу, что в данном случае удобнее всё держать в одном файле.
Так что делайте так, как вам удобно.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.