C#:
Використання дебагера

Як користуватися:

Уявіть, що у вас є невелика програма, яка працює не так як треба:

static void Main()
{
    int result = Sum(1, 2);
    Console.WriteLine(result);
}

static int Sum(int a, int b)
{
    return a + a; // Ой, мало бути a + b
}

Використовуючи відладчик Visual Studio, встановіть точку зупинки, натиснувши на ліву полосу біля return a + a;. Коли ви запустите програму (натиснувши F5), виконання зупиниться на цьому місці. Наведіть курсор на змінні, щоб переглянути їхні значення, або використовуйте вікно Immediate для оцінки виразів. Ви побачите, що a дорівнює 1 і b дорівнює 2, але a + a не є нашою очікуваною сумою. Змініть це на a + b, продовжіть виконання (F5), і ось, консоль виводить 3.

Поглиблений розділ

Історія відлагодження сягає 1940-х років, коли в одному з ранніх комп’ютерів було знайдено справжнього жука (мотиля). Сучасні відладчики, як от той, що в Visual Studio, надають набір потужних можливостей, включаючи точки зупинки, виконання крок за кроком, вікна для спостереження та багато іншого.

Альтернативи відладчику Visual Studio включають відкриті рішення на кшталт GDB для мов стилю C або pdb для Python, та кросплатформні IDE, такі як JetBrains Rider або VS Code, які пропонують інструменти для відлагодження C# та інших мов.

Коли ви заглиблюєтесь у реалізацію відладчика, ви дивитеся на програму, яка приєднується до процесу вашого застосунку. Вона інтерпретує машинний код, керує станом пам’яті та контролює потік виконання. Це важливі речі, необхідні для ефективного відлагодження, тому режим відлагодження часто працює повільніше, ніж режим релізу, де ці гачки не існують.

Дивіться також