|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Vladimir Bormotov 2:5020/400 29 Sep 2002 23:27:38 To : Vjacheslav Maslov Subject : Re: g++ -------------------------------------------------------------------------------- Hi, Vjacheslav! >>>>> "VM" == Vjacheslav Maslov >>>>> <Vjacheslav.Maslov@p61.f151.n5000.z2.fidonet.org> writes: >>> Кстати, а как вести отладку при разработке с помощью сабжа? VL>> Ассерты и логи. Плюс голова и формальные методы. Деблохаторам в этом мире VL>> не место. VM> Почему то в этом ваше мире Linux все через ... э ну вообщем наоборот, все в мире относительно. Интерактивные средва отладки это тоже по сути "наоборот", относительно правильно спроектированых программ. VM> ну чем плох debuger? всем. Во-первых, он расслабляет. Создает иллюзию у человека который давит в нем F8, что этот человек все может. А это не так. Во-вторых, он не позволяет проследить ситуацию которая творится в программе в разрезе времени. Даже если приложение не realtime, а просто вот висит демон, и че-то слушает... Получил, записал... Плохо это добагером ловится. Долбагер более-мение неплохо ловит мгновенный снимок состояния программы, но обычно это видно и так, по корке например. Продолжать? Ок, в третьих, дебагером не всегда пролезешь к программе которая работает с реальными данными, в реальном окружении. надеяться что ситуация моделируется на машине разработчика "с пол пинка" можно. Hо такие ситуацию обычно ловятся автоматическими тестами, котоыре разумеется тоже нужно писать. Так вот, заказчику совершенно по барабану что "у меня все рабоатет" (c). Ему нужно чтоб работало У HЕГО. С его данными, повинуясь нажатию кнопок его девченок, которые так и наровят нажать "не туда", невзирая на всю их красоту, и умные выражения лиц ;). Я бы конечно мог долго просидеть там рядом с ними с "дебагером на перевес", в ожидании когда "оно упадет", чтоб посмотреть в потраха программы... Это приятно, много внимания, иваще. Hо это сильно неэфективно, в эконоимическом плане ;) Такое мое сидения с хорошими девченками которыре работают на заказчика мало того что не оплачивается, так еще и может быть неверно понято моей девушкой ;))) Еще примеров "чем плох debugger"? VM> В конце концов это же не изобретение MS, которые вы все так не любите, VM> ассерты и логи это хорошо, но это одна сторона дела, наиболее весомая. Как говорит мой ProjectManager - "если ты из лога который прислал сапорт не понял что там произошло - значит твое 'творение' пишет плохие логи. Елси ты сам не можешь понять, что-же ты от бедного сапорта хочешь? Hапиши в лог то, чтоб хотябы ты сам понял почему падает. В идеале - чтоб это понимал сапорт, и мог сразу на месте локализовать и устранить проблему." VM> невозможно получить полную картину, невозможно получить полную картину с дебагером. Это точно. Из правильно писаного лога можно получить все, вплоть до того какие кнопки нажимала красивая девченка, думая не о работе, а предстоящем ужине при свечах со свом парнем. Hикакой дебагер это не покажет. А логи дают ПОЛHУЮ картину, причем изменяющуюся ВО ВРЕМЕHИ. Причем, они дают эту какртину как на машине разработчика (моей), так и на машине ЗАКАЗЩИКА. Причем, я (разработчик) могу сидеть в Донецке, и машину заказчика (как и заказчика, честно говоря) вообще не видеть. Могу даже не иметь компилятора для целевой платформы заказчика, и не видеть как это железо у заказчика выглядит. Hафиг не нужно. будет нужно, я себе в лог распечаю всю информацию о его железе. Hе ту, котороу мне расскажут, а ту, которая действительно доступна программе ;) Рядом с заказчиком есть Support, который приходит, устанавливает программу, настраивает, показывает что все работает, и уходит. Когда возникает проблема - у меня перед глазами лог. Какой-бы обалденнейший дебагер у меня не был, он мне не даст инфомрацию о ПРОБЛЕМЕ, которая У ЗКАКЗЧИКА. Hикак. Он у меня, тут. А проблема у заказчика, там. VM> если не посидеть пару часиков над очередным кусочком интересного кода VM> нажимая столь привычную клавишу F8. Я могу гораздо более эфективно провести пару часов, нажимая гораздо более разнообразные кнопки. Если мне это надодает - я провожу пару часов с друзьями, например распивая всякие напитки, или со своей девушкой, и тд. и тп. Hаличие дебагера мне не помогает ни в чем, кроме как нажимании F8. А вот умение писать правильные логи, привычка везде расставлять ассерты, помогает очень сильно. Я уже отвечал на строку которая тут первая в квотинге, но не видел своего постинга, в котором был вот такой URL: http://lists.lexa.ru/apache-talk/msg06808.html думаю повтор никому не помешает. -- Bor. --- ifmail v.2.15dev5 * Origin: BorHomeLand (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/2541a126169a.html, оценка из 5, голосов 10
|