[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Несколько вопросов вразброс



Артём Н. -> debian-russian@lists.debian.org  @ Sun, 24 Jun 2012 21:26:10 +0400:

 АН> Небольшой вопрос по скриптам.
 АН> Если у меня есть функция, которая требует много параметров, напрямую с ней не
 АН> связанных (т.е., к примеру, она вызывает вложенные функции), нормально ли это -
 АН> использовать глобальные "константы"?
 АН> Т.е., они, вроде как, не совсем константы: один загружаются, при чтении конфига,
 АН> после чего не меняются.
 АН> Плохо соображаю и не могу выбрать.
 АН> Минус - при их использовании, увеличивается связность.
 АН> Плюс - мне не нужно передавать в функцию 100500 параметров.
 АН> А если мне нужно протестировать функцию, я всегда могу их заменить...
 АН> И не нужно передавать кучу слабосвязанных параметров.
 АН> Вообще, как правильно?

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

С точки зрения программы параметры, прочитанные из конфига - константы,
и их лучше не передавать, но лучше оформить обращения к ним так, чтобы
было видно, что это параметр из конфига, а не мировая константа.

Если же надо передавать их в библиотеку, которая ни сном, ни духом о
конфиге, то в библиотечные функции и передается эта единая точка входа в
конфиг.


Reply to: