Domov vývoj Čo je to analýza zdrojového kódu? - definícia z technológie

Čo je to analýza zdrojového kódu? - definícia z technológie

Obsah:

Anonim

Definícia - Čo znamená analýza zdrojového kódu?

Analýza zdrojového kódu je automatizované testovanie zdrojového kódu programu s cieľom nájsť chyby a opraviť ich pred predajom alebo distribúciou aplikácie.

Analýza zdrojového kódu je synonymom pre analýzu statického kódu, kde je zdrojový kód analyzovaný jednoducho ako kód a program nie je spustený. Toto odstraňuje potrebu vytvárania a používania testovacích prípadov a môže sa od seba oddeliť od chýb špecifických pre funkciu, ako sú tlačidlá, ktoré majú inú farbu, ako sa uvádza v špecifikáciách. Zameriava sa na nájdenie porúch v programe, ktoré môžu mať nepriaznivý vplyv na jeho správnu funkciu, ako sú riadky kódu spôsobujúce zlyhanie.

Techopedia vysvetľuje analýzu zdrojového kódu

Analýza zdrojového kódu je v podstate automatizované ladenie kódu. Cieľom je nájsť chyby a chyby, ktoré nemusí byť pre programátora zrejmé. Zámerom je nájsť chyby, ako je možné pretečenie vyrovnávacej pamäte alebo neusporiadané použitie ukazovateľov a zneužitie funkcií zberu odpadu, ktoré môžu hacker využiť.

Analyzátory kódu fungujú podľa pravidiel, ktoré im hovoria, čo treba hľadať. Pri príliš malej presnosti by analyzátor mohol vystreliť príliš veľa falošných poplachov a zaplaviť používateľa zbytočnými varovaniami, zatiaľ čo príliš veľká presnosť môže trvať príliš dlho, kým sa dokončí; preto musí byť v rovnováhe.

Existujú dva druhy analyzátorov:

  • Interprocedurálne - zisťuje vzory z jednej funkcie na druhú a tieto vzorce sú korelované tak, aby analyzátor mohol vytvoriť model a simulovať výkonné cesty.
  • Intraprocedurálne - zameriava sa na párovanie vzorov a záleží na tom, aké druhy vzorov používateľ hľadá.

Interprocedurálne analyzátory sú modernejšie a komplexnejšie. Dobrými príkladmi sú Coverity, Fortify a vlastný prefix centralizovaného nástroja spoločnosti Microsoft.

Čo je to analýza zdrojového kódu? - definícia z technológie