spamsink: (Default)
[personal profile] spamsink


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

Сейчас - уже которую неделю - я занимаюсь расчисткой кода от каловых завалов, оставшихся от старой хардверной архитектуры, которую перестали продавать уже, пожалуй, года три как, но руки дошли сделать branch совсем недавно.

И вижу:
// desperation debugging -- not called
void check_for_some_property(...) {
...
}

Некая процедура, которая пригодна только для того, чтобы вызываться исключительно из-под отладчика, мало того что была checked in, так в ней еще и все отладочные печати снабжены уникальными идентификаторами!

Вот какие они, американские пиэйчди!

Date: 2009-07-10 12:32 am (UTC)
From: [identity profile] sab123.livejournal.com
Ну так если обычный stderr переключен в /dev/null, то единственный способ чего-то напечатать - через логгер.

Date: 2009-07-10 02:10 am (UTC)
From: [identity profile] sab123.livejournal.com
Ну это смотря как он устроен. Если все сообщения должны быть в табличке, откуда они извлекаются по коду - то без кода не обойтись.

Date: 2009-07-10 12:33 am (UTC)

Date: 2009-07-10 01:11 am (UTC)
From: [identity profile] relyef.livejournal.com
Бывает хуже. Вот я недавно игрался с неким фреймворком, в котором был H-file следующего содержания:

template<typename T> class foo {
...
T value;
...
void toDebugStream(std::ostream & os) const
{
os << value;
}
...
}
/////////////
В тестах эти многомудрые граждане ничего сложнее foo<int> не использовали. А как только я написал foo<map<bar,vector<baz> > > - тут-то компиляция и рухнула.

Date: 2009-07-10 01:23 am (UTC)
From: [identity profile] ygam.livejournal.com
Сшарп 2+ такого не потерпит.

Date: 2009-07-10 02:34 am (UTC)
From: [identity profile] cema.livejournal.com
Вот какие они, типа, молодцы.

Date: 2009-07-10 07:27 am (UTC)
From: [identity profile] cema.livejournal.com
Ох, не видел ты нашего кода.

Date: 2009-07-10 06:46 am (UTC)
From: [identity profile] malaya-zemlya.livejournal.com
В checked in виде все лучше, чем локально держать. Версии, бэкапы - очено полезно.

Date: 2009-07-10 07:10 am (UTC)
From: [identity profile] ivan-ghandhi.livejournal.com
Дийкстра говорил так: самолёт испытали - можно снимать приборы.

Date: 2009-07-10 07:36 am (UTC)
From: [identity profile] cema.livejournal.com
Эти не то что можно, эти нужно.

А у нас без гирь не летает.

Date: 2009-07-10 07:36 am (UTC)
From: [identity profile] cema.livejournal.com
"Сто раз вам говорил: не снимайте леса, пока не поклеили обои!"
Page generated Mar. 5th, 2026 02:43 am
Powered by Dreamwidth Studios