Будинки Розвиток Що таке аналіз вихідного коду? - визначення з техопедії

Що таке аналіз вихідного коду? - визначення з техопедії

Зміст:

Anonim

Визначення - Що означає аналіз вихідного коду?

Аналіз вихідного коду - це автоматизоване тестування вихідного коду програми з метою пошуку несправностей та їх виправлення до продажу або розповсюдження програми.

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

Техопедія пояснює аналіз вихідного коду

Аналіз вихідного коду - це в основному автоматична налагодження коду. Мета - знайти помилки та несправності, які можуть не бути очевидними для програміста. Він призначений для пошуку несправностей, таких як можливі переповнення буфера або необережне використання покажчиків та неправомірне використання функцій збору сміття, і все це може бути використане хакером.

Аналізатори коду працюють за допомогою правил, які вказують, на що звернути увагу. З занадто малою точністю аналізатор може викласти занадто багато помилкових позитивних даних і залити користувача марними попередженнями, тоді як занадто велика точність може зайняти занадто багато часу, щоб закінчити; отже, має бути баланс.

Існує два види аналізаторів:

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

Міжпроцедурні аналізатори є більш сучасними та складнішими. Хорошими прикладами цього є власний централізований інструмент PREfix Coverity, Fortify та Microsoft.

Що таке аналіз вихідного коду? - визначення з техопедії