For faster navigation, this Iframe is preloading the Wikiwand page for Дебъгер.

Дебъгер

За информацията в тази статия или раздел не са посочени източници. Въпросната информация може да е непълна, неточна или изцяло невярна.Имайте предвид, че това може да стане причина за изтриването на цялата статия или раздел.

Дебъгер или дебъгър (на английски: debugger) е компютърна програма за проследяване на процеса на изпълнение на компютърни програми (дебъгване). Обикновено целта на такова проследяване е намиране на грешки, които се наричат „бъгове“.

Този тип програми се използва от програмисти за тестване на новосъздадени продукти, за да се предотвратят възможни неизправности в процеса на работа на дадения продукт. Когато програмата се изпълнява в дебъг режим, тя е значително забавена, за да може да се открие моментът на възникването на дадения „бъг“.

Програмна грешка или „бъг“ възниква, когато дадена програма не може да продължи с изпълнението си по нормален начин. Например програмата може да се опитва да използва ресурси, които са забранени или вече не съществуват. Също така е възможно в написания код на дадената програма да има грешка в някой алгоритъм или функция, което ще доведе до „crash“ (на български „счупване“) което е еквивалентно и на „бъг“.

Дебъгване е самият процес на откриване на грешки с една програма в друга. Чрез специални програми, които могат да изпълняват и проверяват в себе си продуктите на софтуерните инженери. Някои дебъгери могат да правят и по-сложни неща, например да изпълняват програмата стъпка по стъпка (Stepping) или да я спрат в даден момент чрез Break Point (брейк пойнт е точка, която се поставя на даден ред в програмния код с цел проследяване на стойностите на дадени променливи).

Други дебъгери имат способността да променят състоянието на програмата, докато е стартирана, което от своя страна се изразява в промяна на някоя от стойностите на участващи променливи в нея и дори на някои функции. По този начин е възможно по-нататъшното изпълнение на програмата и изследване на поведението ѝ с новозададените стойности на променените параметри. Осигурява се и възможност да бъде стартирана програмата на различни места от програмния код, с цел да се избегне срив или логическа грешка, породена от предхождащ код по време на изпълнението ѝ.

Някои дебъгери се характеризират с особеност наречена „обратно дебъгване“, което се отличава от нормалния режим на дебъгване по това, че се извършва в обратен ред на хронологията на изпълнение на дадена програма (отзад напред). Няколко дебъгера включват тази функционалност за езици като C#, Visual Basic .NET, както и някои други езици с изключение на C++. Такива са Visual Studio Ultimate Edition (версия от 2010 нагоре), а за JAVA – gdb ver. 7.0+, както и „Omniscient Debugger“. Дебъгването в обратен хронологичен ред е много удобно за откриването на някои специфични проблеми, но все още не се използва толкова често.

Отдалечен дебъгер Това е дебъгер, който не се пуска на машината, на която работи приложният софтуер, а дебъгването се реализира по компютърна мрежа.

Конзолен Дебъгер

Някои от най-използваните програми за дебъгване са: Intel Debugger (IDB), LLDB, Microsoft Visual Studio Debugger, Valgrind Valgrind, WinDbg WinDbg.

{{bottomLinkPreText}} {{bottomLinkText}}
Дебъгер
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?