Где вытаскивать настройки?

Есть у меня такой объект - Loginner. Он используется контроллером - тот передаёт ему response, request, logger и настройки модуля пользователей, после чего тягает методы Logiiner::logIn, Loginner::logOut, ::remember и проч.

В настройках модуля содержатся сообщения об ошибках, лимите попыток логина, и проч. Request предоставляет необходимые данные - ip, user_agent. Эта данные потом используются в методах Loginner.

Вопрос: мне создавать под каждое такое значение свойство в Loginner и записывать в него данные из переданных настроек модуля и Request прямо в конструкторе, или же лучше записать Request и настройки модуля в свойства, а уже из них тягать значения в методах?

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

$this->limit_reached_message
вместо
$this->module_settings->login_limit_reached_message
,

$this->ip
вместо
$this->request->getServer('REMOTE_ADDR')),

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

Так какой подход лучше использовать?
  • Вопрос задан
  • 110 просмотров
Пригласить эксперта
Ответы на вопрос 1
Лучше хранить конфигурацию в отдельнов файле конфигурации, например, loginner.config.php
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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