Debugger

Słownik kwalifikacji INF.04 - Projektowanie, programowanie i testowanie aplikacji

Co to jest debugger?

Debugger to narzędzie służące do wykrywania i analizowania błędów w programie podczas jego działania. Umożliwia programiście zatrzymanie programu w wybranym miejscu i sprawdzenie, co dzieje się z kodem w danym momencie.

Debugger jest właściwym narzędziem, gdy trzeba sprawdzić wartości zmiennych w czasie wykonywania aplikacji, przeanalizować kolejność wykonywania instrukcji albo znaleźć miejsce, w którym program działa niezgodnie z oczekiwaniami.

Do czego służy debugger?

Najczęstsze zastosowania debuggera:

  • zatrzymywanie programu w wybranym miejscu za pomocą breakpointów,
  • podgląd aktualnych wartości zmiennych,
  • wykonywanie programu krok po kroku,
  • sprawdzanie stosu wywołań funkcji lub metod,
  • analizowanie warunków logicznych i przebiegu algorytmu,
  • wykrywanie błędów trudnych do zauważenia na podstawie samego kodu.

Przykład użycia

Jeżeli program błędnie oblicza wynik, programista może ustawić punkt przerwania przed obliczeniem:

x = 10
y = 0
wynik = x / y

Debugger pozwoli zatrzymać program przed wykonaniem dzielenia i sprawdzić, że zmienna y ma wartość 0, co prowadzi do błędu dzielenia przez zero.

Debugger a inne narzędzia

Debugger nie jest tym samym co:

  • interpreter — wykonuje kod języka interpretowanego,
  • kompilator — tłumaczy kod źródłowy na kod wynikowy,
  • analizator składni — sprawdza poprawność składni kodu.

W pytaniach egzaminacyjnych, jeśli mowa o sprawdzaniu wartości zmiennych podczas działania programu, poprawną odpowiedzią jest zwykle debugger.