Гнатына Александр пишет: > В сообщении от 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 - в котором не
> будет вызов записи в лог.
> Если коротко, то не надо смешивать уровни абстракции.
>
Спасибо всем. Все логично. Наверно взгляд уже замылился у меня ... пора
отдыхать =)
--
Roman V. Nikolaev
mail: [email protected]
icq: 198-364-657
jabber: [email protected]
site: http://www.rshadow.ru
signature.asc
Description: OpenPGP digital signature
-- Moscow.pm mailing list [email protected] | http://moscow.pm.org
