Execute Way
Известно, что отладка подчас отнимает не мало времени от процесса создания проекта. Для создания приложений не завязанных на тайм-аутах очень хороша пошаговая отладка и трассировка (обожаю ее ;-) ). А что же делать с программами завязанными на время :-| ?!
Вы скажите, вывод на эран? Мммм...Ну да есть такое дело. Но ведь всегда хочется чего-то бОльшего и светлого :-).
Собственно:
Отсюда возник такой вопросик. Есть ли какие либо средства отладки, которые сохраняют путь исполнения программы для последующего анализа корректной отработки логики?
А что, писание лога в файл для последующего анализа не подходит?
Сейчас так и есть...
Представь пошаговую отладку и трассировку. Удобно, правда? И код перед глазами! Один минус - это не реальная ситуация. Процесс приостанавливается после каждого шага.
Дык вот я хочу узнать есть ли инструменты, позволяющие не портя исходников запоминать путь программы во время исполнения и записывать его (путь) в некий лог (бд). Чтобы потом можно было пройти по коду и узнать как это было ! Во!
ЗЫ. Ну и фантазер же я *-)...Быть может лет через 5-10...;-) такая тема будет стандартной примочкой, как знать...
Но как и всегда все хочется уже сейчас!
Сейчас так и есть...
Представь пошаговую отладку и трассировку. Удобно, правда? И код перед глазами! Один минус - это не реальная ситуация. Процесс приостанавливается после каждого шага.
Дык вот я хочу узнать есть ли инструменты, позволяющие не портя исходников запоминать путь программы во время исполнения и записывать его (путь) в некий лог (бд). Чтобы потом можно было пройти по коду и узнать как это было ! Во!
ЗЫ. Ну и фантазер же я *-)...Быть может лет через 5-10...;-) такая тема будет стандартной примочкой, как знать...
Но как и всегда все хочется уже сейчас!
Обьясняю как это делаю я... :)
Пишу класс Cerror. К класу подрубаю файл, с описанием констант ошибок. Каждая ошибка имеет по константе. Идея работы класа - обратная расшифровка строки полученых констант и последовательное приближение к месту ошибки, с последующим выводом на экран. Каждая функция проэкта в свою очередь возвращает переменную данного класа. Просто и удобно... =)
...Пишу класс Cerror...
То есть появление ошибок ты тоже "отлаживаешь" :-) ?
Не спорю, что принцип верный, однако что будет, если ты ошибешься при возвращение кодов ошибок ? А если даже и не будет такой ошибки, то можно схавать элементарную логическуб ошибку. То есть ты уверен, что после этого участка кода надо вернуть "тру", но по ходу набивания кода ошибаешься... В результате твоя же строка констант могет завести тебя дальше чем Сусанин поляков =)
...Все это очень мило, но по своему самодельно. Я же хочу узнать есть ли способ слежки за ходом выполнения программы без внесения чего либо в исходники! Хочу узнать есть ли автоматизированные инструменты отладки такого типа, а то меня уже после 3-го относительно крупного проекта запаривает каждый раз дописывать к коду новую (фактически) систему отлова ошибок!
Если у тебя есть какие нить линки буду признателен =)
То есть появление ошибок ты тоже "отлаживаешь" :-) ?
А ты думал... ;)
Не спорю, что принцип верный, однако что будет, если ты ошибешься при возвращение кодов ошибок ? А если даже и не будет такой ошибки, то можно схавать элементарную логическуб ошибку. То есть ты уверен, что после этого участка кода надо вернуть "тру", но по ходу набивания кода ошибаешься... В результате твоя же строка констант могет завести тебя дальше чем Сусанин поляков =)
Использую длинные и ясные по смыслу имена констант. :)
...Все это очень мило, но по своему самодельно. Я же хочу узнать есть ли способ слежки за ходом выполнения программы без внесения чего либо в исходники! Хочу узнать есть ли автоматизированные инструменты отладки такого типа, а то меня уже после 3-го относительно крупного проекта запаривает каждый раз дописывать к коду новую (фактически) систему отлова ошибок!
Если у тебя есть какие нить линки буду признателен =)
Хм, а ты подумай возможно ли это вообще? ИМХО при возрастании сложности кода он должен уже иметь самоотлаживающуюся часть. Почему я так думаю? Просто посмотрел как идет отладка ошибок в игрушке типа анриал. Там что-то типа опимсаного мною выше. Но чтоб найти прогу, которая бы говорила, "у тебя в той строчке вот такая вот ошибка.". Это уже из области фантастики, что-то типа: написать програмку, которая бы определяла есть даная програмка алгоритмом или нет.