В сообщении от 19 марта 2010 11:50:52 автор Roman V. Nikolaev написал: > Привет. Помогите осилить сабж. Есть несколько конкретных примеров и не > понятно как нормально сделать: > > Например есть модуль My::Config который берет данные о подключения к БД > из txt файла, а так же через него получают некоторые конфигурационные > параметры из БД (с помощью DBI). Таким образом получается зависимость > что DBI нужен модуль конфига чтобы получить данные о подключении, а > конфигу нужен DBI чтобы далее работать с параметрами хранящимися в БД. Как мне кажется тут надо что-то вроде цепочки: My::TxtCfg, My::DBcfg, My::Cfg.
> > Или вот второй пример: модулю отсылки почты надо вести логи, и он > подключает соответствующий модуль. И наоборот, модулю работы с логами > надо, например в случае ошибки, отослать письмо. Аларма на случай ошибки должна быть простая как два рубля. чтобы обязательно дошла. То есть send_email($to, $form, $subj, $messages) - непосредственно отсылает сообщение, my_send_email(куча параметров) использует send_email и пишет логи и варит кофе. Дублирование кода если будет, то в вызове send_email. соответственно при разборе логов - вызывать send_alert_email - в котором не будет вызов записи в лог. Если коротко, то не надо смешивать уровни абстракции. -- С уважением, Гнатына Александр. -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
