Новини високих технологій
» » Debug — що це? Опис інструменту

Debug — що це? Опис інструменту

20-12-2017, 13:04
804
Debug — що це? Debug, або налагодження. у комп'ютерному програмуванні та розробці, — це багатоетапний процес, який включає визначення проблеми, виявлення її джерела, а потім виправлення збою або вибір способу подальшої роботи. Останнім кроком налагодження є перевірка коректного виправлення.

Введення

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


Debug — що це і як працює? Тактика може включати інтерактивну налагодження, аналіз потоку управління, модульне та інтеграційне тестування, аналіз файлів журналів, моніторинг на рівні додатків або системи, дампи пам'яті і профілювання.

Debug — що це? Опис процесу

Debug — це штатний процес пошуку і видалення збоїв, помилок або аномалій комп'ютерної програми, які програмісти обробляють з допомогою інструментів налагодження. Налагодження перевіряє, виявляє і виправляє помилки, щоб забезпечити правильну роботу програми відповідно до встановлених вимог. В розробці програмного забезпечення налагодження включає в себе пошук і виправлення помилок коду в комп'ютерній програмі. Debug є важливим етапом процесу тестування програмного забезпечення і невід'ємною частиною всього життєвого циклу розробки ПЗ. Процес налагодження починається, як тільки код записується, і продовжується на наступних етапах, оскільки код об'єднується з іншими модулями програмування для формування програмного продукту. У великій програмі, що має тисячі рядків коду, процес налагодження можна спростити, використовуючи такі стратегії, як модульні тести, огляди коду і парне програмування.


Debug в контексті MS-DOS

У MS-DOS Debug — що це? Це команда, яка дозволяє програмістам досліджувати і змінювати джерела вмісту пам'яті, які відбуваються в операційній системі. Методика надання інструкцій з комп'ютерних завдань через інтерфейс командного рядка спочатку використовувалася в середовищах MS-DOS для перекладу коду асемблера в робочий код і машинної мови виконувані (debug.exe файли.
Debug дозволяє розробникам переглядати вміст пам'яті, вносити зміни, а потім виконувати COM, .exe і інші типи файлів.

Історія

Microsoft вперше представила команду debug в MS-DOS 1.0 в якості методу тестування програм. Була додана додаткова функціональність — інструмент орієнтувався на різні операційні задачі, такі як відображення вмісту частини пам'яті, введення даних за вказаною адресою, запуск виконуваних файлів пам'яті, шістнадцяткова арифметика і маніпуляція реєстраційної пам'яттю.

Важливий етап виявлення помилок

Після виявлення програмного збою необхідно знайти помилку в коді (Debug error). На цьому етапі корисно переглянути ведення журналу коду і використовувати автономний інструмент відладчика або компонент налагодження інтегрованого середовища розробки (IDE). Спочатку виявляються і фіксуються помилки в найбільш популярних функціях. У деяких випадках модуль, що представляє проблему, очевидний, а сама рядок коду — ні. У цьому випадку модульні тести, такі як JUnit і xUnit, які дозволяють програмісту запускати певну функцію з конкретними входами, можуть бути корисні при налагодженні.

Процес налагодження

Стандартна практика полягає в тому, щоб налаштувати і запустити програму до точки зупинки, при якій припиняється виконання програми. Компонент налагодження IDE зазвичай надає програмісту можливість переглядати пам'ять і змінні, запускати програму до наступної фінальної точки, виконувати тільки наступний рядок коду і в деяких випадках змінювати значення змінних або вміст рядка коду, яка повинна бути виконана.

Загальні інструменти налагодження

Аналізатори вихідного коду, які включають в себе безпеку, загальні помилки коду та аналізатори складності, також можуть бути корисні при налагодженні. Аналізатор складності здатний знайти модулі, які настільки складні, що їх важко зрозуміти і перевірити. Деякі інструменти можуть фактично аналізувати пробний прогін, щоб побачити, які рядки коду не виконувалися. Це може істотно допомогти в налагодженні. Інші інструменти для налагодження включають розширене протоколювання і симулятори, які дозволяють професійного програмісту моделювати поведінку програми на обладнанні користувача.

Пошук і видалення помилок програмного забезпечення

Деякі інструменти, особливо інструменти з відкритим вихідним кодом і мови сценаріїв, не запускаються в середовищі IDE і вимагають ручного підходу до налагодження. Такі методи включають в себе скидання значень в журнал, розширені «друковані» заяви, додані під час виконання коду або жорстко закодовані debug-команди (наприклад, wait), які імітують точку зупинки, очікуючи введення клавіатури в певний час.

Debug Dump Files — можна чи видалити?

Багато користувачів після виникнення збою виявляють у місці зберігання програми системні файли. Документи носять найменування Debug Dump Files. Можна чи видалити їх? Це налагоджувальні файли, які створюються після порушення роботи, щоб допомогти визначити причину виникнення помилки. Якщо ви не намагаєтеся вирішити проблему, то можете видалити їх.
Цікаво по темі
Github - що це таке? Як працювати з сайтом github.com?
Github - що це таке? Як працювати з сайтом github.com?
GitHub — що це таке? Даний ресурс — це веб-платформа для управління версіями і спільної роботи для розробників програмного забезпечення.
Що таке програмний код, застосування, помилки
Що таке програмний код, застосування, помилки
Що являє собою програмний код? Для чого застосовується і де? Як писати зрозумілий, працездатний і оптимізований код?
Висновок помилок в PHP
Висновок помилок в PHP
Як відбувається виведення помилок в PHP? З допомогою якихось директив і механізмів? Кілька способів включення і використання.
Оператор присвоювання в "Паскаль": для чого призначений, які дії виконує
Оператор присвоювання в "Паскаль": для чого призначений, які дії виконує
Turbo Pascal – нескладна мова програмування, але його вивчення трудомістко, якщо зайнятися цим питанням серйозно. Починаючий користувач осягає ази
JavaScript: приклади застосування
JavaScript: приклади застосування
jаvascript - сучасна мова програмування, без якого важко створити динамічний сайт, який привертає увагу. JS ідеально справляється з обробкою