Feilsøking (debugging)

Når man lager programmer kan det fort bli en feil i koden, og da må det ofte en del detektivarbeid til. Vi kaller dette å feilsøke. Begrepet debugging betyr det samme. Vi vil komme mer tilbake til feilsøking i MOOC Programmering i skolen, når vi skal arbeide med tekstbasert programmering - og hvor utfordringene ofte ligger i feil syntaks.

Å drive feilsøking er omtrent som å lete etter hvor man har gjort feil når man har gjort en utregning og svaret er galt. Det kan være svært frustrerende, og noen ganger ser man seg helt blind. Da kan det være godt å få noen andre til å ta en titt - å se på problemet med nye øyne.

Det er mange ting som kan være feil - det kan være en feil i programkoden, feil i utstyr som er tilkoblet eller at utstyret er ødelagt.

I enkle visuelle koder kan man prøve å kjøre programmet og se hvor det stopper opp, eller gjør noe annet enn det som er tenkt. Deretter forsøker man å bytte om på handlinger eller legge til flere. Prøve og feile vil ofte føre frem, og det er viktig å tenke på at det å feile er en del av læringsprosessen. Som regel skyldes feil at man har brukt feil handling eller at handlingene ikke står i riktig rekkefølge. Prøv å tenke gjennom trinn for trinn hva som skal skje, og se om dette samsvarer med programkoden man har laget. I tekstbaserte programspråk må man også være svært nøyaktig med syntaksen, f.eks. at man har riktige parenteser og klammer - og at man har deklarert variabler. 

I code.org finnes det en knapp som gjør at du kan kjøre en og en instruksjon, og på den måten se hvor feilen oppstår. Dette vises i videoen under:

 

Kompilator

For tekstbaserte programmeringsspråk bruker man ofte en kompilator. Dette er en slags tolk som oversetter programkoden (kildekoden) til maskinkode, som datamaskinen kan lese. Gjennom å bruke en kompilator vil man ofte få beskjed om at noe er feil i koden, og hvor feilen befinner seg.