Analiza izvorne kode

Avtor: Eugene Taylor
Datum Ustvarjanja: 7 Avgust 2021
Datum Posodobitve: 1 Julij. 2024
Anonim
Clean Coders Hate What Happens to Your Code When You Use These Enterprise Programming Tricks
Video.: Clean Coders Hate What Happens to Your Code When You Use These Enterprise Programming Tricks

Vsebina

Opredelitev - Kaj pomeni analiza izvorne kode?

Analiza izvorne kode je avtomatizirano testiranje izvorne kode programa z namenom iskanja napak in njihovega odpravljanja pred prodajo ali distribucijo aplikacije.


Analiza izvorne kode je sinonim za analizo statične kode, kjer se izvorna koda analizira preprosto kot koda in program ne deluje. To odpravi potrebo po ustvarjanju in uporabi testnih primerov in se lahko loči od značilnih napak, kot so gumbi, ki so drugačne barve, kot pravijo specifikacije. Osredotoča se na iskanje napak v programu, ki lahko škodijo njegovi ustrezni funkciji, kot so vrstice kod, ki povzročajo zrušitev.

Uvod v Microsoft Azure in Microsoft Cloud | V tem priročniku boste spoznali, kaj sploh pomeni računalništvo v oblaku in kako vam lahko Microsoft Azure pomaga preseliti in voditi vaše podjetje iz oblaka.

Tehopedia razlaga analizo izvorne kode

Analiza izvorne kode je v osnovi avtomatizirano odpravljanje napak. Cilj je najti napake in napake, ki programerju morda niso očitne. Namenjen je iskanju napak, kot so morebitni prelivi medpomnilnikov ali neurejena uporaba kazalcev in zloraba funkcij za odvoz smeti, ki jih lahko heker izkoristi.


Analizatorji kode delujejo s pravili, ki povedo, na kaj naj iskajo. S premajhno natančnostjo bi lahko analizator razkril preveč napačnih pozitivnih rezultatov in uporabnika preplavil z nekoristnimi opozorili, medtem ko bi lahko preveč natančnosti trajalo predolgo, da bi se dokončala; zato mora biti ravnovesje.

Obstajata dve vrsti analizatorjev:

  • Medproceduralno - zazna vzorce iz ene funkcije v drugo in ti vzorci so povezani, tako da lahko analizator ustvari model in simulira izvedbene poti.

  • Intraproceduralno - je osredotočeno na ujemanje vzorcev in odvisno od vrste vzorcev, ki jih uporabnik išče.

Medproceduralni analizatorji so sodobnejši in kompleksnejši. Dobri primeri tega so Coverity, Fortify in Microsoftovo lastno centralizirano orodje PREfix.