Bug je ..? Kaj je napaka pri programiranju?

24. 3. 2019

Pri programiranju je "žuželka" izraz, izposojen iz angleščine, kar pomeni neuspeh katerega koli programa, katerega posledice so nepredvidljive. Razlog za takšne napake je napaka razvijalcev aplikacij v kodah. V skladu s tem se program, v katerem so opazili hrošče, imenuje "buggy" ali "buggy".

Poročila o napakah

Medtem ko se program izvaja, na primer igra ali aplikacija za ustvarjanje predstavitev, se lahko zgodi napaka, ki pogosto vodi do zaključka procesa ali drugih nepredvidljivih rezultatov. Ker je napaka napaka, je pomembno, da razvijalci vedo, kje in kdaj je prišlo do napake, da bi popravili kodo.

napaka

Po ročnem zapiranju aplikacije v pogovorno okno za razvijalca se prikaže uporabniško poročilo, ki se imenuje » poročilo o napaki« (poročilo o napaki). Ko se aplikacija samodejno odjavi, se prikaže okno »poročilo o sesutju« ( poročilo o sesutju). kaj je hrošč

Samo programerji vedo, kaj je hrošč, kako ga lokalizirati, razhroščiti in preizkusiti aplikacijo.

Izvor izraza

V izvirnem prevodu napaka - gre za napako, ki je bila uporabljena za označevanje tehničnih težav, ki jih ni mogoče odkriti na stopnji pisanja kod, v telegrafih in telefonih, dokler se računalniki ne začnejo uporabljati.

Tako je slavni izumitelj Thomas Edison že leta 1878 dejal, da je bil vsak njegov izum nekako povezan z žuželkami. Ustvarjanje naprav je stvar tehnologije, vendar je neizogibno vsak od njih prej ali slej začel zavračati delo. Potem je Edison predstavil koncept "hroščev". Po njegovem mnenju je hrošč manjša težava ali napaka, ki jo je mogoče popraviti šele po dolgem času in na podlagi rezultatov opazovanj, meritev in poskusov.

Tudi izraz "hrošči" je bil uporabljen med drugo svetovno vojno. Potem je samo vojaško vedelo, kaj je hrošč, konvencionalno pa je ta pojem označil kot težavo pri delovanju radarske elektronike.

V programski napaki - kaj je to? Opredelitev prvič ga je uvedla Grace Hopper leta 1946. Takrat je delala na računalniškem programiranju na Harvardu. Vendar pa je naprava v določenem trenutku zavrnila odziv in se izklopila. Potem se je Grace odločila, da bo iz nesreče izsledila notranjost avtomobila. Na njeno presenečenje je bil razlog za napako v izračunih moljček, ki je bil zataknjen med relejnimi stiki. Molj se še vedno hrani v tehničnem dnevniku pod trakom pod zapisom: "Prvi veljaven primer iskanja hrošča." v programski napaki

Klasifikacija hroščev

V zvezi s fazami programiranja so napake razdeljene v naslednje skupine:

  • Sintaktični . Razlog za takšno napako je neizkoriščena odprta ali zaprta oklepaja v kodi, zaradi česar je kompilacija datotek nemogoča.
  • Opozorilo . Razlog za to napako je namerno ali nenamerno zapisovanje spremenljivke s strani programatorja, ki ga sistem ne more inicializirati. Takšna napaka se pojavi v fazi razvoja programske opreme. Razvijalec bodisi popravi zahtevani del kode ali zanemari sporočilo.
  • Semantično . Takšne napake so povezane s semantičnimi kršitvami pri razvoju programske opreme, na primer, namesto operacije dodajanja se izvaja operacija odštevanja spremenljivk.

V smislu količinskih napak so:

  • usodna;
  • resno;
  • nepomembno.

Odvisno od časa napak so:

  • stalno, ki spremlja vsak začetek prijave;
  • periodično, ki se pojavlja na plavajoči vrsti;
  • odjemalec, tj. izkaže le uporabnik zaradi nepravilnih nastavitev svojega računalnika. kaj je definicija

Glede na lokacijo zaznavanja napak so:

  • v uporabniškem vmesniku;
  • pojavljanje med obdelavo rezultatov poročil;
  • pojavijo se v trenutku, ko je kateri koli pogoj izpolnjen;
  • povezane z izračuni;
  • pojavljanje pri obdelavi in ​​razlagi informacij;
  • odkriti s povečanjem obremenitve sistema;
  • povezane z identifikatorji ali nadzorom različic;
  • povezane s testiranjem.

Vsaka napaka se lahko zgodi kadarkoli. To je odvisno od njegove narave, obremenitve uporabniškega sistema, nastavitev. Nastajajoči hrošči naredijo računalnik bolj dovzeten za nepooblaščen dostop ali DoS-napade.

Vrste zrušitev

Stabilna in lahko zaznavna žuželka je vreča.

"Plavajoča" in pogosto spreminjajoče se lastnosti, ki jih je težko izslediti, se imenuje heisenbag.

Kritični neuspeh, ki vodi do popolnega prenehanja delovanja sistema, se imenuje shredinbag.