Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];

Вниз

Debuger   Найти похожие ветки 

 
Valt   (2002-10-24 11:30) [0]

Уважаемые Мастера!
Имеется программа, которая вроде бы отлично работает, не глючит, все вроде бы с ней в порядке. Но наша компания дает на нее гарантию на пол-года. Я хотел спросить, существуют ли какие-нибудь мощные дебагеры, которые могут указать на опасность переполнения стека например или какие-либо другие проблемы, которые могут возникнуть не сразу, а через некоторое время?


 
Valt   (2002-10-24 11:45) [1]

Ау!


 
Zemal   (2002-10-24 11:54) [2]

Как глючит? Эксцепшены выскакивают или повисает? Что именно происходит с ней? Вопрос настолько расплывчатый, что ответить можно только так: полазий в настройках компилятора, отключи проверку переполнения стэка... хотя я бы этого неделал :).


 
lensky   (2002-10-24 11:56) [3]

которая вроде бы отлично работает, не глючит, все вроде бы с ней в порядке.
Zemal, vnimatel"nee...


 
Игорь Шевченко   (2002-10-24 12:09) [4]

Существует. Называется "программа тестирования". Комплекс административно-технических мер с привлечением людских ресурсов.

BTW: Я бы в жизни не взял программу, на которую дается временнАя гарантия.


 
Zemal   (2002-10-24 12:10) [5]

>>lensky
Я внимательно прочитал :). Помоему в вопросе нехватает конкретики. Как глючит? У меня тоже глючат некоторые проги, если их запускать скажем под Win 95. :) Если хотите написать неглюченую прогу, то пишите её непосредственно для одной-двух ОС... ну типа под Win NT/2000. Возможны глюки при вызове API-функций, т.к. мелкософт постоянно их переименовывает и перекраивает... при вызове некоторых API-функций могут быть некоторые глюки в разных ОС свои... и даже без генерации исключений... просто глюки и всё :(. С таким я нераз сталкивался. Могут быть глюки без генерации исключений при выходе некоторых диапозонов значений за рамки (например индексов массива).


 
Zemal   (2002-10-24 12:18) [6]

Совет: пересмотрите код и в сомнительных местах выводите в лог контрольные точки, значения переменных, используйте почаще блоки try...exception/finaly при обращении ко всем ресурсам. И главное незабывайте очищать память от мусора и ненужных объектов, используйте меньше глобальных переменных (по возможности ограничте их видимость)... небуду учить как это делается, но наведите порядок в исходном коде и тогда ошибок и глюков станет значительно меньше. Удачи.


 
Zemal   (2002-10-24 12:28) [7]

Множество глюков порождает ленивый программист... просто ему лень объявлять каждый раз переменные класса (к примеру) и он объявляет переменную класса TIniFile глобально, а потом забывает, что уже создал такую переменную в предыдущем блоке и создаёт второй объект... в результате в памяти две переменных, работающих с одним файлом, только ссылка на первый экземпляр потеряна... вот так и начинается котовасия... таких программеров полно (ленивых)... от этого и глюки :). Вот скромный пример безолаберности... ищите в исходниках подобные фишки, наверняка найдёте кучу такого, раз прога существенно глючит :). В первую очередь просмотрите цикл жизни переменных классов, потом массивы, ну а уж там и все базовые переменные на диапозоны значений и на облать видимости. По своему опыту говорю, что именно в этом основная масса глюков и багов! :) Удачи!



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.015 c
14-11455
chsv
2002-10-12 17:45
2002.11.04
а какие хорошие книги есть по WIN API?


14-11454
Юрий Зотов
2002-10-14 18:24
2002.11.04
день добрый всем. подскажите пожалуюста что бы мне перехватить


3-11097
Владимир Мельников
2002-10-16 09:43
2002.11.04
вопрос по бд


14-11430
vopros
2002-10-15 12:17
2002.11.04
У меня вопрос


14-11422
TTCustomDelphiMaster
2002-10-14 22:53
2002.11.04
MyMail.com





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский