Re[10]: Куда помещать код логирования?
От: AlexNek  
Дата: 03.03.12 13:57
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>Здравствуйте, AlexNek, Вы писали:


AN>>Это было скорее вопросительное замечание, чем вопрос. Но вообще этот код хорошо бы смотрелся только в курсовой по программированию, как мне кажется.

S>Если вы хотите какого-то ответа на ваше вопросительное замечание, то, пожалуйста, сделайте его более развёрнутым.
Если бы я хотел "обязательный" ответ, то это был бы вопрос.

S>В частности, почему конкретно вы считаете такой код неприменимым на практике?

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

AN>>Вот эти должны быть правильнее.

AN>>http://www.rsdn.ru/forum/dotnet/4641286.1.aspx
Автор: abibok
Дата: 29.02.12

AN>>http://www.rsdn.ru/forum/dotnet/4641442.1.aspx
Автор: abibok
Дата: 01.03.12

S>Не знаю, почему вы хотите пояснений мнению, высказанному abibok-ом, от меня.
Вообще это я понял (что авторы разные) только когда искал ссылки, обычно я "вижу" форум в "плоском" виде.
S>Лично у меня по поводу того фрагмента мнений два:
S>1. К сожалению, в дотнете нет способа перевыбросить исключение, не исказив его стек. Поэтому вариантов для конкретного фрагмента, в общем-то, нет.

S>2. Но в целом надо понять, а зачем вообще код конкретно этого уровня заморачивается логгированием исключения? Он не доверяет вызывающему коду, думая что тот обязательно исключение проглотит? Он не доверяет вызываемому коду, думая, что тот ничего не протрассирует перед моментом выброса исключения?

А для чего это нужно понимать? Есть код для которого нужно иметь больше информации, гораздо быстрее вставить линию трассировки и глянуть протокол, чем разбираться нужна она или нет.
S>Выглядит очень подозрительно. Одно дело, если бы перехват исключения был частью логики. Но тогда бы не было перевыброса.
Для меня выглят абсолютно натурально. Был код без трассировки, в который ее добавили.
Cообщение написано в << RSDN@Home 1.2.0 alpha 5-AN-R8 rev. 13227>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.